详解从零搭建 vue2 vue-router2 webpack3 工程(3)
配置loader
配置 vue 文件对应的 loader。
module: { rules: [ { test: /\.vue$/, use: ["vue-loader"] } ] }
Webpack2 必须在 module.rules 下配置 loader。'-loader'不能省略,必须将 loader 名写全。可以使用 Rule.use 或 Rule.loader 来配置 loader(Rule.loader 是 Rule.use: [ { loader } ] 的简写),建议用 use。
上面完成了新增页面及访问该页面所需的配置,下面来测试下是否能正常访问/index。执行npm run dev,浏览器显示如图界面。
支持CSS
安装 css-loader 后即可在 vue 文件中使用
npm i css-loader -D
想要支持import / require引入CSS文件,则需要配置对应的 Rule。
{ test: /\.css$/, use: ["vue-style-loader", "css-loader"] }
<script> import "../style/style.css" </script>
支持CSS预处理语言
以 stylus 为例,安装 stylus 及 stylus-loader。
npm install stylus stylus-loader -D
增加 .styl 文件对应的 loader 配置。
{ test: /\.styl$/, use: ["vue-style-loader", "css-loader", "stylus-loader"] }
使用示例:
<style lang="stylus"> .stylus .red color red </style> <script> import "../css/stylus-example.styl" </script>
node-sass 安装慢的解决办法
使用淘宝镜像:
npm set disturl https://npm.taobao.org/dist
也可以单独设置node-sass镜像:
npm set sass_binary_site http://cdn.npm.taobao.org/dist/node-sass
支持图片及图标字体
安装图片及图标字体依赖的loader。
npm install url-loader file-loader -D
增加图片及图标字体的loader配置。
{ test: /\.(png|jpe?g|gif|svg)(\?.*)?$/, use: [{ loader: "url-loader", options: { limit: 10000, name: 'images/[name].[hash:7].[ext]' // 将图片都放入images文件夹下,[hash:7]防缓存 } }] }, { test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/, use: [{ loader: "url-loader", options: { limit: 10000, name: 'fonts/[name].[hash:7].[ext]' // 将字体放入fonts文件夹下 } }] }
内容版权声明:除非注明,否则皆为本站原创文章。