Như chúng ta biết, bạn có thể chạy các lệnh tùy ý sử dụng npm run
bằng cách thêm một hash scripts
-package.json
của bạn:Kịch bản lệnh 'npm run' nằm bên ngoài trong package.json trên Windows?
"scripts": {
"build-js": "browserify browser/main.js | uglifyjs -mc > static/bundle.js"
}
nào sau đó sẽ được chạy với npm run build-js
.
Bạn cũng có thể di chuyển các lệnh này ra thành kịch bản riêng biệt, chẳng hạn như kịch bản bash, như vậy:
"scripts": {
"build-js": "bin/build.sh"
}
Điều này rõ ràng không natively làm việc trên Windows, do Windows không phải là khả năng chạy script bash . Bạn có thể cài đặt các cổng bash và như vậy, nhưng tôi muốn có thể sử dụng một số loại cấu trúc Windows nguyên bản để làm điều tương tự.
Tôi đã thử một số cách tiếp cận khác, trong đó có sử dụng child_process.exec
để chạy các lệnh tùy ý từ bên trong một file nút kịch bản tiêu chuẩn:
"scripts": {
"build-js": "node bin/build.js"
}
Nhưng tôi đã nhận thấy child_process
cuộn cảm trên hoạt động tương đối lớn/chuyên sâu, làm cho nó không thể sử dụng.
Có cách nào cụ thể cho Windows (hoặc thậm chí tốt hơn, đa nền tảng) để di chuyển các tập lệnh package.json
npm run
này vào các tệp riêng biệt không? Tốt nhất là một trong đó không yêu cầu bash?