我在create-react-app项目中使用HJSON(请参见答案here),但Jest没有使用相同的Webpack配置,因此无法正确导入HJSON-例如
import options from '../assets/options.hjson';
只需将
options
设置为字符串'../assets/options.hjson'。那么如何使用Jest导入HJSON文件呢?
最佳答案
您需要为Jest创建一个转换器模块,以将HJSON转换为JSON-请参阅文档here。
使用以下命令在根目录中创建文件jest-hjson-transformer.js
const hjson = require('hjson');
function process(src, path, config, transformOptions) {
const json = hjson.parse(src);
const jsonStr = JSON.stringify(json, null, 2);
const out = `module.exports = ${jsonStr}`;
return out;
}
exports.process = process;
在您的
package.json
中, "jest": {
"moduleFileExtensions": [
"js",
"jsx",
"hjson"
],
"transform": {
"^.+\\.hjson$": "<rootDir>/jest-hjson-transformer.js"
}
},
关于javascript - 您如何在create-react-app项目中将HJSON与Jest一起使用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48340097/