您正在使用Vue的仅运行时版本,而模板编译器不可用

Cod*_*rer 1 webpack vue.js

我正在尝试使用编译我的Vue.js应用程序,webpack但在浏览器中收到此警告。

您正在使用Vue的仅运行时版本,而模板编译器不可用。可以将模板预编译为渲染函数,也可以使用包含编译器的内部版本。

这是什么意思?我该如何解决错误?

Ale*_*rov 34

如果您尝试使用非预编译的 Vue 模板,则会弹出此错误。

要解决此问题,请将runtimeCompiler选项vue.config.js设置为true

module.exports = {
  runtimeCompiler: true
}
Run Code Online (Sandbox Code Playgroud)

请注意,这将在您的发行版中包含额外的 JavaScript 负载。

或者,您可以使用预编译的 Vue 模板。


小智 11

vue.config.js文件中将 runtimeCompiler 设置为 true 后,我仍然遇到错误。

你可以简单地编辑你的 src/main.js 文件

从 : import Vue from 'vue'

到 : import Vue from 'vue/dist/vue.js';


Div*_*512 7

如果您使用 vue-cli-service 编译您的应用程序,请vue.config.js根据编译器添加以下代码:

  configureWebpack: {
    resolve: {
      alias: {
        'vue$': 'vue/dist/vue.esm.js'
      }
    }
  }
Run Code Online (Sandbox Code Playgroud)

如果您使用 webpack 编译您​​的应用程序,请将以下代码添加到webpack.config.js


    resolve: {
      alias: {
         vue: 'vue/dist/vue.js'
      }
    }

Run Code Online (Sandbox Code Playgroud)


Kai*_*rov 6

使用渲染功能

new Vue({
    el: 'body',
     render: function(createElement) {
        return createElement(hello)
    } });
Run Code Online (Sandbox Code Playgroud)

  • 什么是 hello 以及如何让 2 个不同的 url 路径呈现 2 个不同的组件? (3认同)

Cod*_*rer 5

这是因为vue默认情况下包含(不需要)没有模板编译器的版本。要覆盖此默认设置,请将其添加到您的中webpack.config.js

// webpack.config.js
{
    resolve: {
        alias: {
            vue: 'vue/dist/vue.js'
        },
    },
}
Run Code Online (Sandbox Code Playgroud)

来源:https : //github.com/vuejs-templates/webpack/issues/215