webpack +vue开发(2)
我们的loader方式其实可以写成inline的方式
- loaders:[
- {
- test:/\.js$/,
- loader:"babel",
- exclude:/node_modules/,
- }
- ]
直接在entry中写上
- require("!style!css!../css/style.css");
推荐直接使用loader的方法,下面使用vue写一个小例子,首先安装
- npm install vue vue-loader vue-html-loader vue-style-loader vue-template-compiler --save-dev
接下来写我们的loader
- module.exports = {
- devtool:"sourcemap",
- entry:"./js/entry.js",
- output:{
- filename:"bundle.js",
- },
- module:{
- loaders:[
- {
- test:/\.css$/,
- loader:"style!css"
- },
- {
- test:/\.js$/,
- loader:"babel",
- exclude:/node_modules/,
- },
- {
- test:/\.vue$/,
- loader:"vue"
- }
- ]
- },
- babel:{
- presets:['es2015','stage-0'],
- plugins:['transform-runtime']
- }
- }
配置好之后我们现在js下创建一个 components放我们的组件,然后在components下创建一个heading.vue,(最简单的vue组件)
- <template>
- <div>
- <h1>{{message}}</h1>
- </div>
- </template>
- <script type="text/javascript">
- export default{
- data(){
- return {
- message:"hello vue"
- }
- }
- }
- </script>
然后我们在我们的入口文件引入我们vue组件和vue.js并且实例化vue
- require("./module-one.js");
- require("./module-two.js");
- import Vue from 'vue';
- import Heading from './components/heading.vue';
- new Vue({
- el:'#app',
- components:{Heading}
- });
- require("../css/style.css");
然后再去我们的index.html中配置
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8">
- <title></title>
- </head>
- <body>
- <div id="app">
- <Heading></Heading>
- </div>
- <h1>webpck is nice tool</h1>
- <script type="text/javascript" src="bundle.js"></script>
- </body>
- </html>
这里的Heading就是entry.js import的Heading和components的Heading应该是一致的。然后运行webpack之后会出现如下错误
这是由于npm安装vue不是常规模式,要使用常规模式可以通过script标签引入或者添加一个配置
- module.exports = {
- devtool:"sourcemap",
- entry:"./js/entry.js",
- output:{
- filename:"bundle.js",
- },
- module:{
- loaders:[
- {
- test:/\.css$/,
- loader:"style!css"
- },
- {
- test:/\.js$/,
- loader:"babel",
- exclude:/node_modules/,
- },
- {
- test:/\.vue$/,
- loader:"vue"
- }
- ]
- },
- resolve:{
- alias:{
- 'vue$':"vue/dist/vue.js"
- }
- },
- babel:{
- presets:['es2015','stage-0'],
- plugins:['transform-runtime']
- }
- }
这样你就可以看到hello vue显示在页面了,还有另外一种方式全局性的components注册
- require("./module-one.js");
- require("./module-two.js");
- import Vue from 'vue';
- Vue.component('Heading',require('./components/heading.vue'));
- new Vue({
- el:'#app',
- });
- require("../css/style.css");
webpack +vue开发(2)的更多相关文章
- Wabpack系列:在webpack+vue开发环境中使用echarts导致编译文件过大怎么办?
现象,在一个webpack+vue的开发环境中,npm install echarts --save了echarts,然后在vue文件中直接使用 import echarts from 'echart ...
- webpack +vue开发(3)
webpack的一些有用的命令 webpack --display-modules 在终端显示这些module,另外一个推荐使用 webpack --display-modules --display ...
- webpack +vue开发(1)
首先安装 node.js这是毋庸置疑的,安装完了之后安装webpack npm install webpack -g 接下来创建一个自己的文件夹 webpack-learn在里面创建一个index.h ...
- 做一个gulp+webpack+vue的单页应用开发架子
1.目标 最近项目上的事情不多,根据我自己的开发习惯,决定开发一些简单的开发架子,方便以后事情多的时候直接套用.本文讲的一个gulp+webpack+vue的单页应用架子,想要达到的目的: 可以通过命 ...
- 基于 Laravel 开发 ThinkSNS+ 中前端的抉择(webpack/Vue)踩坑日记【ThinkSNS+研发日记系列】
在上一篇文章< ThinkSNS+基于Laravel master分支,从1到 0,再到0.1>,简单的介绍了 社群系统ThinkSNS+ ,这里分享在开发过程中,前端选择的心理活动. L ...
- Webpack+Vue+ES6 前端组件化开发mobile-multi-page应用实战总结
本文版权归博客园和作者吴双本人共同所有 转载和爬虫请注明原文地址 www.cnblogs.com/tdws 一.写在前面 项目上线有一段时间了,一个基于webpack+vue+ES6的手机端多页面应用 ...
- VUE开发请求本地数据的配置,旧版本dev-server.js,新版本webpack.dev.conf.js
VUE开发请求本地数据的配置,早期的vue-lic下面有dev-server.js和dev-client.js两文件,请求本地数据在dev-server.js里配置,最新的vue-webpack-te ...
- Webpack+Vue+ES6 前端组件化开发mobile-multi-page应用实战总结和踩坑
本文版权归博客园和作者吴双本人共同所有 转载和爬虫请注明原文地址 www.cnblogs.com/tdws 一.写在前面 项目上线有一段时间了,一个基于webpack+vue+ES6的手机端多页面应用 ...
- 基于 Webpack 4 搭建 Vue 开发环境
自从工作之后,就已经很久没有写过博客了.时间被分割得比较碎,积累了一段时间的学习成果,才写下了这篇博客. 之前有写过 Webpack4 的文章,但是都比较偏入门,唯一的一篇实战篇 -- 基于Webpa ...
随机推荐
- MVC发布问题(一直显示目录浏览)
写了一个MVC的Demo,发布之后一直显示目录浏览,始终无法展示网站. 步骤如下: 1.生成解决方案,发布应用程序 2.打开IIS,新建网站,选择发布程序的代码路径 3.设置应用程序池为4.0,集成 ...
- JS 百度地图导航
上一篇文章中我们就简单的学习了HTML5 地理定位,那么今天告诉大家我在项目中遇到的一个问题吧,就是怎么实现点击一个按钮就可以调到百度地图,并且获取到你当前的位置,并且导航到指定的地方去. 不想看步骤 ...
- z-index、display、selector选择器优先级css优先级面试用到
z-index:控制元素叠放顺序,哪个z-index数值越大,那个优先被叠放在上面. relative.absolute.fixed这三种情况可以使用z-index. static不可以使用. dis ...
- Java实习生面试总结
之前写了一直存着当草稿,今天看了看. --------------------------------------------------------------------------------- ...
- IT公司100题-tencent-打印所有高度为2的路径
问题描述: 打印所有到叶子节点长度为2的路径 10 / \ 6 16 / \ / \ 4 8 14 18 / \ / \ \ 2 5 12 15 20 / 11 ...
- 黑马程序员——OC语言Foundation框架 NSArray NSSet NSDictionary\NSMutableDictionary
Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一) NSNumber 将各种基本数据类型包装成NSNumber对象 @ ...
- 单例模式(Singleton Pattern)
动机: 在软件系统中,经常有这样一些特殊的类,必须保证它们在系统中只存在一个实例,才能确保它们的逻辑正确性.以及良好的效率. 如何绕过常规的构造器,提供一种机制来保证一个类只有一个实例? 这应该是类设 ...
- easyui js基础
$(document).ready( function(){ initload(); });function initConfig(){ //数据列表 yzfymx=$("#tjdj&quo ...
- mysql linux终端登陆
mysql -uroot -hlocalhost -psorry 设置远程登录 用户名及密码 GRANT ALL PRIVILEGES ON *.* TO root@"%" IDE ...
- 关于设置border的小技巧
可以在需要的时候,在某个元素下面放一个长或宽为1px,或者你需要的border宽度的 div ,再在这个div 上设置border.按需要调整这个div的位置.