我使用bootstrap css和一个用less编写的附加模板。我导入反应组件的根组件。不幸的是,即使较少的文件是导入的第二个文件,引导程序中的样式也会覆盖较少的样式。有没有办法确保webpack的样式顺序。
这是根组件:
import React from "react";
import Dashboard from "./dashboard";
import 'bootstrap/dist/css/bootstrap.min.css'
import '../styles/less/pages.less'
React.render(
<Dashboard />,
document.body
);
这是加载程序设置的相关部分:
{
test: /\.less$/,
loader: ExtractTextPlugin.extract(
'css?sourceMap!' +
'less?sourceMap'
)
}, {
test: /\.css$/,
loader: 'style-loader!css-loader'
},
答案 0 :(得分:3)
问题是我必须在我的加载器设置中为css部分使用ExtractTextPlugin插件:
{
test: /\.less$/,
loader: ExtractTextPlugin.extract(
'css?sourceMap!' +
'less?sourceMap'
)
},
{
test: /\.css$/,
loader: ExtractTextPlugin.extract(
'css'
)
},
答案 1 :(得分:3)
重新排序index.js文件中的css导入:
import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';
import './index.css';
import 'bootstrap/dist/css/bootstrap.css';
import 'bootstrap-rtl/dist/css/bootstrap-rtl.css';
ReactDOM.render(
<App />,
document.getElementById('root')
);
请注意index.css
之前已加载bootstrap.css
。它们应按以下顺序导入:
import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';
import 'bootstrap/dist/css/bootstrap.css';
import 'bootstrap-rtl/dist/css/bootstrap-rtl.css';
import './index.css';
ReactDOM.render(
<App />,
document.getElementById('root')
);