博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
webpack+sass+vue 入门教程(三)
阅读量:4485 次
发布时间:2019-06-08

本文共 3251 字,大约阅读时间需要 10 分钟。

十一、安装sass文件转换为css需要的相关依赖包

npm install --save-dev sass-loader style-loader css-loader

loader的作用是辅助webpack将符合条件的源文件转换为对应的目标格式文件。比如index.scss转换成index.css

安装成功后,package.json文件变化如下:

1240

接着,安装extract-text-webpack-plugin,让webpack可以输出css格式的文件

npm install --save-dev extract-text-webpack-plugin

1240

安装成功后,提示需要node-sass做配合,所以下一步是安装node-sass

npm install --save-dev node-sass

安装node-sass会比较久,需要耐心等待

全部搞定后,package.json文件变化如下:

1240

十二、将app/css/index.css文件改为sass编译输出

在origin文件夹下,新增css.js文件,用于指定读取origin/css/index.scss文件

1240
1240

css.js文件内容如下:

require('./css/index.scss');

origin/css/index.scss文件内容如下

@charset "utf-8";$colorRed : red;$fontSize : 14px;.demo{color:$colorRed;font-size:$fontSize;}

更新webpack配置文件webpack.config.js

var BrowserSyncPlugin = require('browser-sync-webpack-plugin');var ExtractPlugin = require('extract-text-webpack-plugin');module.exports = {  // 配置入口  entry: {      '/js/index':__dirname +'/origin/origin.js',      '/css/index':__dirname +'/origin/css.js'  },  // 编译后的文件路径  output: {          path: __dirname +'/app', // 文件路径    filename: '[name].js' // 文件名称  },  module: {    // 编译规则    loaders: [        // 配置sass编译规则        {            test:/\.scss$/,            loader:ExtractPlugin.extract('style-loader', 'css-loader!sass-loader')          }    ]  },  // 辅助的插件  plugins:[    new BrowserSyncPlugin({      host:'localhost', // 实时监听,webpack -w 可以实时更新硬盘中的文件js,css      port:8080,      file:'',      server:{        baseDir:'./app'      }    }),    new ExtractPlugin('[name].css')  ]}

然后,启动webpack -w

1240
编译成功,再实时修改字体颜色为green

1240

十三、加入vue

1.安装vue,vue选择安装版本1.0.0

npm install --save-dev vue@1.0.0

2.安装babel的相关依赖包,可以编译最新标准的javascript。比如es6,es7。

npm install --save-dev babel-core babel-loader  babel-runtime babel-plugin-transform-runtime babel-preset-es2015 babel-preset-stage-0

3.更新webpack配置文件webpack.config.js

var BrowserSyncPlugin = require('browser-sync-webpack-plugin');var ExtractPlugin = require('extract-text-webpack-plugin');module.exports = {  // 配置入口  entry: {      '/js/index':__dirname +'/origin/origin.js',      '/css/index':__dirname +'/origin/css.js'  },  // 编译后的文件路径  output: {          path: __dirname +'/app', // 文件路径    filename: '[name].js' // 文件名称  },  module: {    // 编译规则    loaders: [        // 配置sass编译规则        {            test:/\.scss$/,            loader:ExtractPlugin.extract('style-loader', 'css-loader!sass-loader')        },        {            // 让webpack去验证文件是否是.js结尾将其转换            test: /\.js$/,            // 通过babel转换            loader: 'babel',            // 不用转换的node_modules文件夹            exclude: /node_modules/,            query: {               'presets': ['es2015', 'stage-0'],               'plugins': ['transform-runtime']            }        },    ]  },  // 辅助的插件  plugins:[    new BrowserSyncPlugin({      host:'localhost', // 实时监听,webpack -w 可以实时更新硬盘中的文件js,css      port:8080,      file:'',      server:{        baseDir:'./app'      }    }),    new ExtractPlugin('[name].css')  ]}

修改origin/origin.js内容如下:

import Vue from 'vue'new Vue({  el: '#print',  data: {      message: "hello vue!"  }})

接着修改app/index.html内容如下:

demo

hello world!

{

{message}}

启动webpack -w,查看浏览器结果

1240

到此,成功整合webpack+sass+vue!

原文入口:http://www.jianshu.com/p/4f280974f664

系列文章:

转载于:https://www.cnblogs.com/walls/p/6258974.html

你可能感兴趣的文章
【JavaScript你需要知道的基础知识~】
查看>>
谷歌搜索语法
查看>>
static 静态变量
查看>>
Docker 安装及问题处理
查看>>
匿名内部类
查看>>
BZOJ4071: [APIO2015]八邻旁之桥
查看>>
Redis的六种特性 场景
查看>>
mysql 添加[取消]timestamp的自动更新
查看>>
码农的半衰期只有15年?
查看>>
手工释放linux内存
查看>>
2014-5-30 总结
查看>>
【H3 BPM工作流程管理产品小故事】第四篇 子表创建
查看>>
洛谷P1148 拱猪计分
查看>>
MySQL服务器的安装和配置,MySQL Workbench 8.0.12安装,MySQL的基本使用
查看>>
扑克序列
查看>>
java笔记--适配器模式的运用
查看>>
C#与数据结构--图的遍历
查看>>
ispy 编译笔记
查看>>
bzoj1067——SCOI2007降雨量(线段树,细节题)
查看>>
day 1
查看>>