【发布时间】:2020-01-25 01:51:14
【问题描述】:
我有一个使用 vue-cli 生成的简单项目。当我运行 vue-cli-service build 命令时,它会正确生成 CSS 文件。当我运行 vue-cli-service build --watch 命令时,它只构建 JavaScript 文件。没有 CSS 文件。
如何在 watch 模式下生成 CSS 文件?
【问题讨论】:
我有一个使用 vue-cli 生成的简单项目。当我运行 vue-cli-service build 命令时,它会正确生成 CSS 文件。当我运行 vue-cli-service build --watch 命令时,它只构建 JavaScript 文件。没有 CSS 文件。
如何在 watch 模式下生成 CSS 文件?
【问题讨论】:
您可以通过在vue.config.js 中添加这行代码来实现此目的
//vue.config.js
module.exports = {
//adding extract css true solves this issue
css: {
extract: true
}
}
【讨论】:
很有可能您必须为 webpack 使用提取插件。
我知道在我正在使用的 vue.config.js 文件中:
chainWebpack: config => {
if (config.plugins.has('extract-css')) {
const extractCSSPlugin = config.plugin('extract-css');
extractCSSPlugin &&
extractCSSPlugin.tap(() => [
{
filename: 'build.css',
chunkFilename: 'build.css'
}
]);
}
}
希望这对您有所帮助。但是,我认为 vue 在文件顶部以监视模式注入您的 css 以实现自动重新渲染的目的。
【讨论】:
Content-Security-Policy HTTP 标头设置为default-src 'self' 'unsafe-eval' 'unsafe-inline'。