Vue進階幺柒柒):Vue應用Sass、Scss、Less和Stylus

      網友投稿 999 2025-03-29

      Vue項目中使用預處理器,可以有效減少css代碼量, 推薦使用Sass、Scss、Less預處理器。可以在創建項目的時候選擇預處理器 (Sass/Less/Stylus)。

      如果當時沒有選擇,內置的 webpack 仍然會被預配置為可以完成所有的處理,也可以手動安裝相應的 webpack loader:

      # Sass npm install -D sass-loader node-sass # Less npm install -D less-loader less # Stylus npm install -D stylus-loader stylus

      1

      2

      3

      4

      5

      6

      7

      8

      然后就可以導入相應的文件類型,或在 .vue 文件中這樣來使用:

      1

      2

      3

      下面主要講解一下vue中使用less或者sass的方法,以less為例(style.less)

      主要是兩種

      1.對于寫在vue文件中的less:

      所有vue文件的,會被vue-loader處理編譯到一個css文件中,最終自動通過link標簽寫入index.html(在vue-loader.conf.js中配置)

      1

      2

      3

      4

      5

      6

      7

      8

      9

      10

      1

      2.對于外部less文件:

      一是在main.js中import style.less 。

      此時webpack會把style.less和各個vue文件的less部分一起編譯到同一個css文件,并在index.html的link中自動引入。

      二是在webpack的入口文件entry中加上style.less,編譯完的出口文件會被自動注入到index.html文件中。

      entry: { app: './src/main.js', style: './src/style/style.less' },

      1

      2

      3

      Vue進階(幺柒柒):Vue應用Sass、Scss、Less和Stylus

      4

      1

      注:

      在vue2.x的webpack.base.conf.js:

      { test: /\.vue$/, loader: 'vue-loader', options: vueLoaderConfig },

      1

      2

      3

      4

      5

      這段是針對.vue文件的處理規則,其中vueLoaderConfig是vue-cli自己定義的加載器,專門處理css樣式

      vueLoaderConfig引用的utils.js:

      return { css: generateLoaders(), postcss: generateLoaders(), less: generateLoaders('less'), sass: generateLoaders('sass', { indentedSyntax: true }), scss: generateLoaders('sass'), stylus: generateLoaders('stylus'), styl: generateLoaders('stylus') }

      1

      2

      3

      4

      5

      6

      7

      8

      9

      所以不需要再在rules里寫.css .less 的處理規則了。

      如碰到下面錯誤

      Module build failed: TypeError: this.getResolve is not a function at Object.loader (F:\code\myGit\vue\node_modules\sass-loader\dist\index.js:52:26)

      1

      2

      因sass-loader版本過高,webpack編譯失敗,解決方法:

      修改sass-loader 版本(^8.0.0 => ^7.3.1)

      npm install sass-loader@7.3.1 --save

      1

      拓展閱讀

      vue-cli3文檔

      《Vue進階(幺柒陸):CSS預編譯語言Sass、Scss、Less和Stylus》

      CSS Less Vue

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:進銷存軟件免費版(管家婆進銷存軟件免費版)
      下一篇:Excel表格基本操作教程,從入門到精通
      相關文章
      99亚洲精品高清一二区| 大胆亚洲人体视频| 久99精品视频在线观看婷亚洲片国产一区一级在线| 色婷婷亚洲十月十月色天| 亚洲AV无码一区二区二三区软件| 亚洲成a人在线看天堂无码| 亚洲日韩国产一区二区三区在线| 亚洲一级高清在线中文字幕| 亚洲成a人片7777| 亚洲熟妇无码久久精品| 亚洲卡一卡2卡三卡4卡无卡三| 亚洲国产成人久久精品动漫| 亚洲男人第一av网站| 久久久久亚洲精品无码蜜桃 | 亚洲成色WWW久久网站| 亚洲中文字幕无码不卡电影 | 久久久国产精品亚洲一区| 久久精品国产亚洲AV大全| 亚洲久本草在线中文字幕| 亚洲视频一区在线观看| 亚洲婷婷综合色高清在线| 亚洲一区二区三区免费视频| 亚洲最大的成人网| 亚洲AV女人18毛片水真多| 亚洲国产精品尤物YW在线观看| 久久精品亚洲福利| 亚洲AV无码一区二区乱子伦| 亚洲综合激情视频| 亚洲精品免费网站| 蜜臀亚洲AV无码精品国产午夜.| 亚洲国产精品13p| 国产成人A人亚洲精品无码| 久久久久亚洲精品无码蜜桃| 亚洲乱人伦精品图片| 亚洲午夜无码毛片av久久京东热| 亚洲国产精品自在自线观看| 亚洲av麻豆aⅴ无码电影| 亚洲熟妇无码AV在线播放| 亚洲毛片在线观看| 2017亚洲男人天堂一| 国产成人精品日本亚洲语音 |