详解从零搭建 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文件夹下

    }

  }]

} 


      

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/700.html