最近得闲,想总结总结最近在学习Vue上的一些心得,毕竟作为新手多写多练好处多多,话不多说,马上开始!


前端工程化为开发带来了很多便利,但实际是,环境的配置也要大费周章一番。我用的是在Node环境下基于webpack来编译打包的,在package.json中用到的包大致如下:图片描述

所下的都是当时线上最新的版本,也是根据自己项目的需求来下载的。Node构建环境搭好后就可以来写webpack.config.js了,(至于怎么初始化Node环境和安装什么的,网上一找都有),这里要注意的是,如果你用的是Sass来写css的话node-sass有时候会莫名的装不上,只需用npm install sass-loader node-sass --save-dev这样就可以了(用npm安装的话)
再就是webpack.config.js的配置了,如下

  `
  

      var path = require('path'); //这里引入路径包
        var webpack = require('webpack'); //引入webpack
        var ExtractTextPlugin = require('extract-text-webpack-plugin');//这个插件是可以将scss文件独立抽取编译为css文件到指定的目录下
        var ExtractCss = new ExtractTextPlugin("./[name].css");//[name]是你入口指定的名字
        module.exports = {
             plugins: [
                ExtractCss  //引入插件
            ],
            entry: {
                main: ['./src/main.js'],  //入口文件
                index: ['./src/css/login.scss']
            },
            output: {
                path: path.resolve(__dirname,'./output'), //输出路径
                publicPath: '/output/',  //公共文件路径
                filename: '[name].build.js' //输出文件名
            },
            module: {  //下面这些是用指定模块编译你要的文件
                loaders: [   
                   { test: /\.vue$/, loader: 'vue', exclude: /node_modules/ },
                   { test: /\.html$/, loader: 'html-loader', exclude: /node_modules/ },
                   { 
                       test: /\.js$/, 
                    loader: 'babel',
                       exclude: /node_modules/
                   },
                   { test: /\.css$/, loader: 'style!css!autoprefiexer' },
                   { test: /\.scss$/, loader: ExtractCss.extract(['css', 'sass']) },
                   { test: /\.json$/,loader: 'fild-loader?name=./json/[name].json' },
                   {
                    test: /\.(png|jpg|jpeg|gif)$/,
                    loader: 'url-loader?limit=10000&name=./images/[name].[ext]'
                  }
                ]
            },
            resolve: {
                alias: {
                   'vue$': 'vue/dist/vue.js' //这个是编译.vue文件的,路径不用改
                },
                extensions: ['','.js','.vue','.scss']
            },
            babel: {
                presets: ['es2015'] //用es6的语法的话,要额外定义
            }
        }
        
        `
   

因为我直接撸的是vue2.0的版本,也不知道之前和1.0有什么不同,网上自己找了个教程,结果被坑了好久,就是版本改动后,很多API都不一样了,这里以后要注意,特别是2.0版本的独立构建和运行构建,具体看这里 [1]:[http://cn.vuejs.org/v2/guide/...独立构建-vs-运行时构建]

也是因为alias: { 'vue$': 'vue/dist/vue.js' },别名没加导致了程序跑不起来。
我用的是vue组件化得方式,每个页面都是一个组件,就是.vue的文件。具体的代码以后再上吧,没写完全。

以上是我学习中的一些小问题,说明不当之处还请高手们多多指教!多多交流


zoew
9 声望0 粉丝