No More Posting New Topics!

If you have a question or an issue, please start a thread in our Github Discussions Forum.
This forum is closed for new threads/ topics.

Navigation

    Quasar Framework

    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search

    AFTER UPDATE: [Vue warn]: Failed to mount component: template or render function not defined.

    Help
    3
    4
    5607
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • ssuess
      ssuess last edited by

      I just updated to the latest quasar 0.14.5, created a new template with quasar cli, and moved my component files into it and resolved all missing dependencies. But now when I launch quasar dev. I get the following warning:

      [Vue warn]: Failed to mount component: template or render function not defined.

      Googling around, it seemed like this was related to runtime vue vs compiler + runtime, so following some instructions I changed a line in my main.js file from:

      import Vue from 'vue'

      to

      import Vue from 'vue/dist/vue.js'

      But alas I get the exact same error. When I try quasar build, the resulting list folder contents WILL properly load on my website, so I feel certain this error is related to quasar dev only…does anyone have any help or advice on what else I can try to fix this? I can’t do local development until I can get my hot reloading local dev environment working again. Thanks!

      1 Reply Last reply Reply Quote 0
      • ssuess
        ssuess last edited by ssuess

        For anyone else with this issue, I found the reason. Since I replaced the src folder entirely, I missed the fact that due to changes in vue-loader (https://github.com/vuejs/vue-loader/releases/tag/v13.0.0), the main quasar start was being called differently. Once I replaced:

        Quasar.start(() => {
          /* eslint-disable no-new */
          new Vue({
            el: '#q-app',
            router,
            render: h => h(require('./App'))
          })
        })
        

        with

        Quasar.start(() => {
          /* eslint-disable no-new */
          new Vue({
            el: '#q-app',
            router,
            render: h => h(require('./App').default)
          })
        })
        

        Everything started working again.

        1 Reply Last reply Reply Quote 3
        • B
          bennus last edited by

          Legend!!

          1 Reply Last reply Reply Quote 0
          • volkano
            volkano last edited by

            Thank you!

            1 Reply Last reply Reply Quote 0
            • First post
              Last post