Home > Web Front-end > JS Tutorial > Detailed explanation of the configuration method using sass based on css preloading in vue

Detailed explanation of the configuration method using sass based on css preloading in vue

亚连
Release: 2018-05-30 16:28:16
Original
1747 people have browsed it

Below I will share with you a detailed explanation of the configuration method of using sass based on css preloading in vue. It has a good reference value and I hope it will be helpful to everyone.

1. Install the sass dependency package

npm install --save-dev sass-loader
Copy after login

//sass-loader依赖于node-sass
npm install --save-dev node-sass
Copy after login

2. Add configuration in the rules of webpack.base.conf.js under the build folder, as shown in the red part below

{ 
 test: /\.sass$/, 
 loaders: ['style', 'css', 'sass'] 
}
Copy after login

<span style="color:#454545;">// module用来解析不同的模块
 module: {
  rules: [
   ...(config.dev.useEslint ? [createLintingRule()] : []),
   {
    test: /\.vue$/,
    // 也就是说,对.js和.vue文件在编译之前进行检测,检查有没有语法错误&#39;eslint-loader&#39;
    // enforce: &#39;pre&#39;选项可以确保,eslint插件能够在编译之前检测,如果不添加此项,就要把这个配置项放到末尾,确保第一个执行
    // 对vue文件使用vue-loader,该loader是vue单文件组件的实现核心,专门用来解析.vue文件的
    loader: &#39;vue-loader&#39;,
    // 将vueLoaderConfig当做参数传递给vue-loader,就可以解析文件中的css相关文件
    options: vueLoaderConfig
   },
   {
    test: /\.js$/,
    // 对js文件使用babel-loader转码,该插件是用来解析es6等代码
    loader: &#39;babel-loader&#39;,
    // 指明src和test目录下的js文件要使用该loader
    include: [resolve(&#39;src&#39;), resolve(&#39;test&#39;)]
   },
   {
    test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
    // 对图片相关的文件使用 url-loader 插件,这个插件的作用是将一个足够小的文件生成一个64位的DataURL
    // 可能有些老铁还不知道 DataURL 是啥,当一个图片足够小,为了避免单独请求可以把图片的二进制代码变成64位的
    // DataURL,使用src加载,也就是把图片当成一串代码,避免请求,神不神奇??
    loader: &#39;url-loader&#39;,
    options: {
     // 限制 10000 个字节一下的图片才使用DataURL
     limit: 10000,
     name: utils.assetsPath(&#39;img/[name].[hash:7].[ext]&#39;)
    }
   },
   {
    test: /\.(mp4|webm|ogg|mp3|wav|flac|aac)(\?.*)?$/,
    // 字体文件处理,和上面一样
    loader: &#39;url-loader&#39;,
    options: {
     limit: 10000,
     name: utils.assetsPath(&#39;media/[name].[hash:7].[ext]&#39;)
    }
   },
   {
    test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
    loader: &#39;url-loader&#39;,
    options: {
     limit: 10000,
     name: utils.assetsPath(&#39;fonts/[name].[hash:7].[ext]&#39;)
    }
   },
    </span><span style="color:#ff0000;">{
      test: /\.sass$/,
      loaders: [&#39;style&#39;, &#39;css&#39;, &#39;sass&#39;]
    }</span><span style="color:#454545;">
  ]
 },</span>
Copy after login

##3. Modify the style lang="scss" in the template; for example, the template is red Tag

<style lang="scss">
Copy after login



<style lang="scss">
  #indexContent {
    .tab{
      display: flex;
      width:100%;
      height: 40px;
      line-height: 40px;
      .tab-item {
        flex: 1;
        text-align: center;
        a{
          display:block;
        }
      }
    }
  }
Copy after login

##4.npm run dev

5. Effect

The above is what I compiled for you, I hope it will be helpful to everyone in the future.

Related articles:

The use of el expressions and non-empty judgment methods in js


JS implements left list shift Go to the right list function


How to use EL expression to obtain the context parameter value in JS


The above is the detailed content of Detailed explanation of the configuration method using sass based on css preloading in vue. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template