Nuxt 构建不包含 node_modules CSS
Nuxt Build Doesn't Include node_modules CSS
抱歉,我对 Nuxt 和 Webpack 还很陌生。我有一个 Nuxt 项目,其中一切正常 运行 yarn dev。但是当我使用 yarn build -> yarn generate 构建时,我在 node_modules 目录(dropzone.css、flatpickr.css 等)中引用的 .css 文件永远不会被包含并破坏地点。我已经尝试了一切,但无法弄清楚我做错了什么。有人能指出我正确的方向吗?目前 运行 Nuxt v2.11.0 和 Tailwind.css。这是我的 nuxt.config.js 文件,主要是样板 -
require('dotenv').config()
export default {
env: {
baseUrl: process.env.BASE_URL || '/',
apiUrl: process.env.API_URL
},
mode: 'universal',
css: [
'@/assets/css/tailwind.css',
'@/assets/fonts/caslongraphique/webfont.css',
'@/assets/fonts/turbinadobolddry/font.css',
{ src: 'nuxt-dropzone/dropzone.css', lang: 'css' },
{ src: 'vue-agile/dist/VueAgile.css', lang: 'css' },
{ src: 'flatpickr/dist/flatpickr.css', lang: 'css' },
{ src: 'flatpickr/dist/themes/airbnb.css', lang: 'css' }
],
/*
** Plugins to load before mounting the App
*/
plugins: [
{ src: '~plugins/helpers' },
{ src: '~plugins/vue-moment' },
{ src: '~plugins/vue-agile', mode: 'client' },
{ src: '~plugins/eventBus', mode: 'client' },
{ src: '~plugins/axios', mode: 'client' },
{ src: '~plugins/vuex-persist', mode: 'client' }
],
buildModules: [
// Doc: https://github.com/nuxt-community/nuxt-tailwindcss
'@nuxtjs/tailwindcss',
],
modules: [
'@nuxtjs/axios',
'@nuxtjs/dotenv',
// 'nuxt-client-init-module'
],
build: {
/*
** You can extend webpack config here
*/
extend (config, ctx) {
},
postcss: {
plugins: {
// Disable a plugin by passing false as value
'postcss-url': false,
'postcss-nested': {},
'autoprefixer': true
},
preset: {
// Change the postcss-preset-env settings
autoprefixer: {
grid: true
}
}
},
}
}
如果没有要构建的完整项目和 运行,很难回答这个问题。我假设您在构建生产时没有使用单独的 webpack 配置文件,否则您会把它添加到问题中。您似乎在配置文件中使用了正确的语法,所以我猜您的 css 文件路径不太正确。它们看起来有点像旧的做事方式,您可能想确认它们没有过时。 This old-ish github 问题涉及您可以尝试的各种事情,其中让 nuxt 像这样自动为您找到 css 的 "compiled" 版本:
css: [
'nuxt-dropzone',
...etc
],
尝试删除所有第 3 方 css 文件,并在前一个文件生效后一次添加一个。
这个例子来自the official docs:
export default {
css: [
// Load a Node.js module directly (here it's a Sass file)
'bulma',
// CSS file in the project
'@/assets/css/main.css',
// SCSS file in the project
'@/assets/css/main.scss'
]
}
抱歉,我对 Nuxt 和 Webpack 还很陌生。我有一个 Nuxt 项目,其中一切正常 运行 yarn dev。但是当我使用 yarn build -> yarn generate 构建时,我在 node_modules 目录(dropzone.css、flatpickr.css 等)中引用的 .css 文件永远不会被包含并破坏地点。我已经尝试了一切,但无法弄清楚我做错了什么。有人能指出我正确的方向吗?目前 运行 Nuxt v2.11.0 和 Tailwind.css。这是我的 nuxt.config.js 文件,主要是样板 -
require('dotenv').config()
export default {
env: {
baseUrl: process.env.BASE_URL || '/',
apiUrl: process.env.API_URL
},
mode: 'universal',
css: [
'@/assets/css/tailwind.css',
'@/assets/fonts/caslongraphique/webfont.css',
'@/assets/fonts/turbinadobolddry/font.css',
{ src: 'nuxt-dropzone/dropzone.css', lang: 'css' },
{ src: 'vue-agile/dist/VueAgile.css', lang: 'css' },
{ src: 'flatpickr/dist/flatpickr.css', lang: 'css' },
{ src: 'flatpickr/dist/themes/airbnb.css', lang: 'css' }
],
/*
** Plugins to load before mounting the App
*/
plugins: [
{ src: '~plugins/helpers' },
{ src: '~plugins/vue-moment' },
{ src: '~plugins/vue-agile', mode: 'client' },
{ src: '~plugins/eventBus', mode: 'client' },
{ src: '~plugins/axios', mode: 'client' },
{ src: '~plugins/vuex-persist', mode: 'client' }
],
buildModules: [
// Doc: https://github.com/nuxt-community/nuxt-tailwindcss
'@nuxtjs/tailwindcss',
],
modules: [
'@nuxtjs/axios',
'@nuxtjs/dotenv',
// 'nuxt-client-init-module'
],
build: {
/*
** You can extend webpack config here
*/
extend (config, ctx) {
},
postcss: {
plugins: {
// Disable a plugin by passing false as value
'postcss-url': false,
'postcss-nested': {},
'autoprefixer': true
},
preset: {
// Change the postcss-preset-env settings
autoprefixer: {
grid: true
}
}
},
}
}
如果没有要构建的完整项目和 运行,很难回答这个问题。我假设您在构建生产时没有使用单独的 webpack 配置文件,否则您会把它添加到问题中。您似乎在配置文件中使用了正确的语法,所以我猜您的 css 文件路径不太正确。它们看起来有点像旧的做事方式,您可能想确认它们没有过时。 This old-ish github 问题涉及您可以尝试的各种事情,其中让 nuxt 像这样自动为您找到 css 的 "compiled" 版本:
css: [
'nuxt-dropzone',
...etc
],
尝试删除所有第 3 方 css 文件,并在前一个文件生效后一次添加一个。
这个例子来自the official docs:
export default {
css: [
// Load a Node.js module directly (here it's a Sass file)
'bulma',
// CSS file in the project
'@/assets/css/main.css',
// SCSS file in the project
'@/assets/css/main.scss'
]
}