javascript - WEBPACK - 如何从 javascript 导入中获取单个构建文件
问题描述
我有这个 javascript
import cards './cards-grid.scss'
import key_point from './key-point.scss'
import contact_form from './contact-form.scss'
在我的 webpack 中有这个条目和这个输出
entry: path.join(__dirname, '../scss/blocks/blocks.js'),
output: {
filename: 'block.bundle.js',
path: path.join(__dirname, '../../assets/blocks')
},
显然,我将所有 CSS 都放在一个文件中,但我想为每个导入获取一个 css 文件,所以:
assets/blocks/cards-grid.min.css
assets/blocks/key-point.min.css
assets/blocks/contact-form.min.css
你认为有可能吗?有没有人有同样的需求?谢谢。
解决方案
为什么要在 js 中导入样式?使用css-loader
和sass-loader
:
module: {
rules: [{
test: /\.scss$/,
use: [
"style-loader", // creates style nodes from JS strings
"css-loader", // translates CSS into CommonJS
"sass-loader" // compiles Sass to CSS, using Node Sass by default
]
}]
}
或者您需要添加[name]
到输出文件名中。然后它不会将所有内容捆绑到一个文件中,但这不适用于样式(.scss 文件):
output: {
filename: '[name].js',
path: path.join(__dirname, '../../assets/blocks')
},
推荐阅读
- typescript - 从对象中提取时如何保留类型,但考虑未定义的键?
- java - Sprint 数据使用多个数据模块在运行时注入具有不同实现的相同接口
- python - 如何使 matplotlib.pyplot 中每个子图的高度一致?
- r - Blogdown:使用 Clarity 主题启用代码折叠
- java - SWTChart 在循环内时不重绘
- android - Android Studio (Kotlin) 放大缩小 imageView
- kubernetes - Kubernetes 示例文档链接
- ios - SwiftUI 如何在子视图上导航到新的导航页面
- excel - 如何获取另一列包含特定范围内的值的列数据的平均值
- php - 多响应消息