nuxt.config.js 在哪里构建模块仅在开发模式下构建?
Posted
技术标签:
【中文标题】nuxt.config.js 在哪里构建模块仅在开发模式下构建?【英文标题】:nuxt.config.js where build modules build only in dev mode? 【发布时间】:2021-03-17 00:36:33 【问题描述】:源码:github.com/alexpilugin/ap-nuxt-firebase-s-s-r 接下来是问题:此 Nuxt s-s-r 应用程序使用相同的 nuxt.config.js 文件,该文件位于 /src 文件夹中,在部署之前它将被复制到服务器文件夹中.
nuxt.config.js 包含一个在服务器上创建问题的下一个构建模块(在 s-s-rapp firebase 函数中)
buildModules: [
// https://go.nuxtjs.dev/eslint
'@nuxtjs/eslint-module'
],
我的问题是如何使用单个 nuxt.config.js 文件,但不要在生产中使用 @nuxtjs/eslint?
我发现可以像这样在 nuxt.config.js 文件中定义开发模式:dev: process.env.NODE_ENV !== 'production'
但是如何将它与 buildModules 一起使用以便在条件下使用它?
我当前的解决方案 - 从 nuxt.config.js 文件中删除 @nuxtjs/eslint-module
【问题讨论】:
【参考方案1】:我认为您可以编写一个 javascript 函数来返回基于相关环境的模块(dev 或 prod)。
// moduleBuilder.js
const getModulesByEnvironment = () =>
const env = process.env.NODE_ENV;
if (env === 'production')
return [
...
'brilliant_prod_module',
...
];
else
return [
...
'brilliant_dev_module',
...
]
;
export getModulesByEnvironment ;
// nuxt.config.js
import getModulesByEnvironment from './moduleBuilder';
...
buildModules: getModulesByEnvironment()
...
【讨论】:
谢谢。这是一个非常有趣的方法。我一定会试试的! 我很高兴,我建议按照最简单的方式做某事。这是 javascript :)以上是关于nuxt.config.js 在哪里构建模块仅在开发模式下构建?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Nuxt 的 nuxt.config.js 中导入 mdi 图标模块
我们如何在 Nuxt?Vuejs 项目中仅包含来自 lodash 的必需模块?