我正在实现来自节点-配置文档的选项2。
运行良好,并且在测试环境之外运行时定义了我的全局配置变量。
但是,当我使用vue-cli和Jest单元测试(例如vue-cli-service test:unit)运行这个程序时,我会得到以下错误:
● Test suite failed to run
ReferenceError: APP_CONFIG is not defined// vue.config.js
...
configureWebpack: {
plugins: [
new ConfigWebpackPlugin('APP_CONFIG')
]
},
...绕开这条路有什么好办法?是因为Jest在node-config完成切换所有全局变量及其值之前就开始执行JS文件了吗?
发布于 2019-07-18 07:49:57
Jest不运行Webpack,所以您必须手动设置测试的配置。作为解决办法,您可以将配置声明为Jest 全局。
若要声明全局,请将globals属性添加到jest.config.js中导出的对象中。子属性键将是config-webpack的命名空间(在您的示例中是APP_CONFIG),该值将是来自config/的所需的配置JSON文件。
// jest.config.js
module.exports = {
globals: {
APP_CONFIG: require('./config/default.json')
}
}https://stackoverflow.com/questions/57084920
复制相似问题