webpack打包vue2.0项目时必现问题(转载)

原文地址:http://www.imooc.com/article/17868

[Vue warn]: You are using the runtime-only build of Vue where the template compiler is not available. Either pre-compile the templates into render functions, or use the compiler-included build.

(found in <Root>)

这个问题是怎么造成的呢,找了很久找不到处理方法,上网查了也没找到一个好的处理方案。后来去看官方文档,找到了类似的答案。

这是什么意思呢?
运行时构建不包含模板编译器,因此不支持 template 选项,只能用 render 选项,但即使使用运行时构建,在单文件组件中也依然可以写模板,因为单文件组件的模板会在构建时预编译为 render 函数。运行时构建比独立构建要轻量30%,只有 17.14 Kb min+gzip大小。
上面一段是官方api中的解释。就是说,如果我们想使用template,我们不能直接在客户端使用npm install之后的vue。此时,再去看查vue模块,添加几行
resolve: {
alias: {
‘vue‘: ‘vue/dist/vue.js‘
}
}
再运行,没错ok了。

以下是我的完成的代码
webpack.config.babel.js

/**
* Created by lenovo on 2017/5/8.
*/
import path from ‘path‘;
import HtmlWebpackPlugin from ‘html-webpack-plugin‘;
const config = {
entry: ‘./src/index.js‘,
output: {
filename: ‘bundle.js‘,
path: path.join(__dirname, ‘dist‘)
},
module: {
loaders:[
{
test: /\.js$/,
loader: ‘babel‘
},
{
test: /\.vue$/,
loader: ‘vue-loader‘
}
]
},
plugins: [
new HtmlWebpackPlugin({
filename: ‘index.html‘,
template: ‘./index.html‘,
title: ‘hello App‘
})
],
resolve: {
alias: {
‘vue‘: ‘vue/dist/vue.js‘
}
}
}
export default config;
package.json

{
"name": "demo",
"version": "1.0.0",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"dependencies": {
"vue": "^2.3.2"
},
"devDependencies": {
"babel-core": "^6.3.26",
"babel-loader": "^6.2.0",
"babel-preset-es2015": "^6.24.1",
"html-webpack-plugin": "^2.28.0",
"webpack": "^1.12.9",
"vue-loader": "^12.0.3",
"vue-template-compiler":"^2.3.2"
}
}
不知道有没有朋友遇到过这样的问题,如果遇到了而你正好不知道怎么解决,我想这篇文章会帮到你。

相关标签:Node.jsJavaScriptVue.js
本文原创发布于慕课网 ,转载请注明出处,谢谢合作!

时间: 2024-11-05 19:34:06

webpack打包vue2.0项目时必现问题(转载)的相关文章

Vue2.0项目

什么是 Vue Vue 是一个前端框架,特点是 数据绑定 比如你改变一个输入框 Input 标签的值,会 自动同步 更新到页面上其他绑定该输入框的组件的值 ? 组件化 页面上小到一个按钮都可以是一个单独的文件.vue,这些小组件直接可以像乐高积木一样通过互相引用而组装起来  ? Vue2.0 推荐开发环境 ? Homebrew 1.0.6(Mac).Node.js 6.7.0.npm 3.10.3.webpack 1.13.2.vue-cli 2.4.0.Atom 1.10.2 安装环境 打开终

vue2.0项目 calendar.js(日历组件封装)

最近一直闲来无事,便寻思着做一下自己的个人项目,也想说能使用现在比较流行的一些mvvm框架来做,于是就选用了这样的一个技术栈vue2.0+vue-router+vuex+webpack来做,做得也是多页面应用,使用vue-router,也是想说把多个功能模块化,单个模块spa,实现更高的效果.当然现在还在做的过程中,如果感兴趣可以过来star一下,哈哈,https://github.com/xiaobinwu/Wuji,git clone下来看看. 今天要说的是在做这个项目的过程中,自己想加一个

前端 高级 (二十五)vue2.0项目实战一 配置简要说明、代码简要说明、Import/Export、轮播和列表例子

一.启动服务自动打开浏览器运行 二.配置简要说明 1.node_modules 安装好的依赖文件,中间件等,所在位置 2.package.jason 配置当前项目要安装的中间件和依赖文件 { "name": "my-app", "version": "1.0.0", "description": "A Vue.js project", "author": "

vue2.0项目实战(3)生命周期和钩子函数详解

最近的项目都使用vue2.0来开发,不得不说,vue真的非常好用,大大减少了项目的开发周期.在踩坑的过程中,因为对vue的生命周期不是特别了解,所以有时候会在几个钩子函数里做一些事情,什么时候做,在哪个函数里做,我们不清楚. 下面来总结一下vue的生命周期. vue生命周期简介 咱们从上图可以很明显的看出现在vue2.0都包括了哪些生命周期的函数了. 生命周期探究 对于执行顺序和什么时候执行,看上面两个图基本有个了解了.下面我们将结合代码去看看钩子函数的执行. <!DOCTYPE html>

vue2.0项目结构和打包发布

先来一张项目结构图: 本地开发测试运行的命令是npm run dev 打包发布的命令是 npm run build生成的dist文件夹里的文件就是我们可以布置到服务上的文件 但是呢,这打包好的文件的文件地址都是/根目录的,如果我们需要更改这个默认的更目录路径,需要在config文件夹里的index.js里的 assetsPublicPath: '/',修改目录就行了,这里它默认的就是根目录.

利用 React/Redux/React-Router 4/webpack 开发大型 web 项目时如何按需加载

如何设计一个大型 web 项目? React + webpack 如何按需加载? React + React-Router 4 + webpack 如何按需加载? React + Redux + React-Router 4 + webpack 如何按需加载? 实录提要: bundle-loader 和 Webpack 内置的 import() 有什么区别? 按需加载能否支持通过请求后台数据,动态配置页面的的应用场景? 参与过几个 React 项目,被依赖包搞的晕晕的,不知道该怎么选择? 什么包

vue2.0项目实战--使用axios发送请求

在Vue1.0的时候有一个官方推荐的 ajax 插件 vue-resource,但是自从 Vue 更新到 2.0 之后,官方就不再更新 vue-resource. 关于为什么放弃推荐? -> 尤大原话 最近团队讨论了一下,Ajax 本身跟 Vue 并没有什么需要特别整合的地方,使用 fetch polyfill 或是 axios.superagent 等等都可以起到同等的效果, vue-resource 提供的价值和其维护成本相比并不划算,所以决定在不久以后取消对 vue-resource 的官

vue2.0 项目开发小结

项目架构 项目目录 ├── build ├── config ├── dist │?? └── static │?? ├── css │?? ├── fonts │?? ├── images │?? ├── js │?? └── lib ├── src │?? ├── api │?? ├── assets │?? │?? ├── global │?? │?? └── images │?? │?? └── footer │?? ├── components │?? │?? ├── common │

vue2.0开发时导入组件时出错

导入自定义组件时出现了如下错误 ERROR Failed to compile with 1 errors 12:35:41 This dependency was not found: * components/star/star in ./~/babel-loader/lib!./~/vue-loader/lib/selector.js?ty pe=script&index=0!./src/components/header/header.vue To install it, you can