使用webpack構(gòu)建項目時 @import less文件時 為什么只有文件里面css樣式生效, less樣式卻不生效
webpack.base.conf.js
'use strict';
const path = require('path');
const prodConf = require('../config').build;
// 拼接路徑
function resolve(dir) {
return path.join(__dirname, '..', dir)
}
// 資源路徑
function assetsPath(dir) {
return path.join(prodConf.assetsPath, dir)
}
//webpack 基本設(shè)置
module.exports = {
//項目入口文件->webpack從此處開始構(gòu)建!
// entry: path.resolve(__dirname, '../src/main.js'),
entry: {
app: ['./src/main.js', 'babel-polyfill']
},
//配置模塊如何被解析
resolve: {
//自動解析文件擴展名(補全文件后綴)(從左->右)
// import hello from './hello' (!hello.js? -> !hello.vue? -> !hello.json)
extensions: [".js", ".vue", ".json"],
//配置別名映射
alias: {
'vue$': 'vue/dist/vue.esm.js',
'src': resolve('src'),
'components': resolve('src/components'),
'assets': resolve('src/assets'),
}
},
//處理模塊的規(guī)則(可在此處使用不同的loader來處理模塊!)
module: {
rules: [
{
test: /\.js$/, //資源路徑
loader: 'babel-loader', //該路徑執(zhí)行的loader
// exclude: __dirname + '/node_modules/', //指定哪個文件不需要loader
include: resolve("src") //指定哪個文件loader
},
{
test: /\.vue$/,
loader: 'vue-loader',
include: resolve("src")
},
{//使用vue-style-loader!css-loader!postcss-loader處理以css結(jié)尾的文件!
test: /\.css$/,
use: [
'vue-style-loader',
{
loader: 'css-loader',
options: {
sourceMap: true,
importLoaders: 1 //用于@import css
}
},
{
loader: 'postcss-loader',
options: {
sourceMap: true
}
}
],
include: resolve("src")
},
{//使用vue-style-loader!css-loader!less-loader!postcss-loader處理以css結(jié)尾的文件!
test: /\.less$/,
use: [
'vue-style-loader',
{
loader: 'css-loader',
options: {
sourceMap: true
}
},
{
loader: 'less-loader',
options: {
sourceMap: true
}
},
{
loader: 'postcss-loader',
options: {
sourceMap: true
}
}
],
include: resolve("src")
},
{
test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
loader: 'url-loader',
options: {
limit: 1000,
name: assetsPath("img/[name].[hash:8].[ext]")
}
}
]
}
}
在main.js引入樣式文件
// 在main.js中引入, 這時直接引入less樣式時是生效的
import 'assets/css/index.less'
//index.less
@color: #fe4747;
#app {
position: absolute;
left:50%;top:50%;
h1 {
color: @color;
}
}
h1 {
font-size: 50px;
}
但是 我在css文件里面 引入 less文件時, 卻不生效了
// 在main.js中引入
import 'assets/css/style.css'
// style.css
@import 'index.less';
html, body {
width: 100%;
height: 100%;
background: rgba(0, 0, 0, .1);
}
這時less文件里面的樣式就不生效了, 但是其中的css樣式 卻是生效的
還有在vue中引入less文件也是跟上面一樣, 只有其中的css樣式生效, less樣式不生效, 而且都不報錯
<style lang="less">
@import '../assets/css/home.less';
</style>
請問這是什么原因?
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達內(nèi)教育集團成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國家深化產(chǎn)教融合/校企合作的政策,積極推進“中國制造2025”,實現(xiàn)中華民族偉大復(fù)興的升級產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責任公司從事總經(jīng)理職務(wù)負責iOS教學(xué)及管理工作。
浪潮集團項目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術(shù)功底深厚。 授課風格 授課風格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。