Tôi đang triển khai các thử nghiệm vào một dự án hiện tại hiện không có kiểm tra. Các thử nghiệm của tôi không thể biên dịch nhập khẩu node_modules/
.Thiết lập Jest "Cú pháp: Xuất mã thông báo không mong muốn"
/Users/me/myproject/node_modules/lodash-es/lodash.js:10
export { default as add } from './add.js';
^^^^^^
SyntaxError: Unexpected token export
at transformAndBuildScript (node_modules/jest-runtime/build/transform.js:320:12)
at Object.<anonymous> (app/reducers/kind_reducer.js:2:43)
at Object.<anonymous> (app/reducers/index.js:12:47)
Cách giải quyết tôi đã tìm thấy là 'danh sách trắng' node_modules
trong package.json jest cấu hình như thế này:
"jest": {
"transformIgnorePatterns": [
"!node_modules/"
]
}
Điều này có vẻ giống như một hack vì phải mất hơn 1 phút để chạy một cách đơn giản kiểm tra nhập khẩu node_modules/lodash-es/lodash.js
.
Bất kỳ trợ giúp hoặc hướng nào được đánh giá cao, cảm ơn!
Rất nhiều nút module xuất khẩu ES5 để jest có thể chạy nó ra của hộp mà không cần biến đổi. đó là lý do tại sao bởi jest mặc định không biến đổi node_modules. Trong trường hợp này, lodash-es đặc biệt xuất các mô-đun es, vì vậy bạn phải để jest biến đổi mã đó. Bạn có thể an toàn nếu bạn sử dụng '"! Node_modules/lodash-es "' trong 'transformIgnorePatterns' của bạn thay vào đó để jest chỉ chạy babel trên lodash-es. –