Todo:
场景:
我有2个具有巨大代码的组件,例如 Component A 和 B ,
组件A 使用<link rel="stylesheet" href="assets/scss/style.css">
<link rel="stylesheet" href="assets/css/bootstrap.min.css">
组件B 使用
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous">
这两个组件相互干扰,如果使用A,则B CSS会损坏,反之亦然。
答案 0 :(得分:0)
您将引导程序用作全局CSS,所以事情会逐步发生。
但是,如果您使用webpack并希望同时享受全球css和组件css的世界,请配置webpack来测试* .module.css以应用css模块,并配置* .css视为全局css。不过,仍然需要进行一些替代。
对于这么大的代码库来说,这可能是不现实的。
关于如何使用webpack实施的粗略想法:
webpack.config.js
{
test: /\.css$/,
include: [/\.global/, /bootstrap/],
loader: ExtractTextPlugin.extract({
fallback: 'style-loader',
use: [
{
loader: 'css-loader',
options: { modules: false }
}
]
})
},
{
test: /\.css$/,
exclude: [/\.global/, /bootstrap/, /node_modules/],
use: ExtractTextPlugin.extract({
fallback: 'style-loader',
use: [
{
loader: 'css-loader',
options: {
modules: true,
localIdentName: '[local]--[hash:base64:5]'
}
}
]
})
}
有关更多信息,请在css-modules repo
进行大量讨论并开放PR