Tôi đang cố gắng chạy một máy chủ dev có kiểu chữ và ứng dụng angular2 mà không cần phải chuyển đổi tệp ts mỗi lần, tôi thấy rằng tôi có thể chạy với nút ts nhưng tôi muốn cũng để xem các tập tin .ts và tải lại ứng dụng/máy chủ như tôi sẽ làm với một cái gì đó như đồng hồ gulp.Cách xem và tải lại ts-node khi thay đổi tệp bản ghi
Trả lời
Tôi đã vật lộn với điều tương tự cho môi trường phát triển của mình cho đến khi tôi nhận thấy rằng api của nodemon cho phép chúng ta thay đổi hành vi mặc định của nó để thực thi lệnh tùy chỉnh. Một ví dụ về điều này sẽ là như sau:
nodemon --watch 'src/**/*.ts' --ignore 'src/**/*.spec.ts' --exec 'ts-node' src/index.ts
Hoặc thậm chí tốt hơn và ra bên ngoài cấu hình nodemon như Sandokan sugested vào một tập tin nodemon.json với các nội dung sau đây, và sau đó chỉ cần chạy nodemon:
{ "watch": ["src/**/*.ts"], "ignore": ["src/**/*.spec.ts"], "exec": "ts-node ./index.ts" }
Nhờ làm điều này bạn sẽ có thể tải lại trực tiếp một tiến trình ts-node mà không phải lo lắng về việc triển khai bên dưới.
Chúc mừng!
Cập nhật cho hầu hết các phiên bản gần đây của nodemon:
{
"watch": ["src"],
"ext": "ts",
"ignore": ["src/**/*.spec.ts"],
"exec": "ts-node ./src/index.ts"
}
Cụ thể cho vấn đề này tôi đã tạo ra thư viện tsc-watch
. bạn có thể tìm thấy nó trên npm.
trường hợp sử dụng hiển nhiên sẽ là:
tsc-watch server.ts --outDir ./dist --onSuccess "node ./dist/server.ts"
Dưới đây là một thay thế cho của HeberLZ answer, sử dụng các kịch bản NPM.
My package.json
:
"scripts": {
"watch": "nodemon -e ts -w ./src -x npm run watch:serve",
"watch:serve": "ts-node --inspect src/index.ts"
},
-e
cờ đặt extenstions để tìm kiếm,-w
đặt thư mục theo dõi,-x
thực thi kịch bản.
--inspect
trong tập lệnh watch:serve
thực sự là cờ node.js, nó chỉ cho phép giao thức gỡ lỗi.
Ngoài ra, hãy chắc chắn rằng bạn đã cài đặt bản mẫu cục bộ cho dự án. Nếu không, lỗi bạn có thể nhận được không rõ ràng. – Aranir
- 1. Grunt - Xem tệp và SFTP khi được thay đổi
- 2. Cách tải lại trang web khi định hướng thay đổi?
- 3. Tôi làm cách nào để có các tệp nguồn tải lại mod_perl khi thay đổi?
- 4. Tải tệp js vào tệp bản ghi
- 5. kiểm tra hệ thống tệp chrome - tải lại khi thay đổi
- 6. Xem tệp để thay đổi
- 7. Cách xem và tải lại ứng dụng ExpressJS bằng pm2
- 8. Chế độ xem của Tabbar được tải lại trong khi thay đổi hướng, trong iOS 8
- 9. Cách thay đổi văn bản nút quay lại uinavigationbar
- 10. angularjs tự động tải lại khi thay đổi phụ trợ
- 11. Làm thế nào để tự động tải lại một tệp python khi nó được thay đổi
- 12. Amazon S3 SDK: Thay đổi tên tệp khi tải xuống?
- 13. Thay đổi văn bản nút sau khi nhấp, sau đó thay đổi lại sau khi nhấp lại
- 14. Django và Celery - tải lại mã vào Celery sau khi thay đổi
- 15. Sau khi xóa tệp và tạo lại tệp, không thay đổi ngày tạo trong cửa sổ
- 16. Hoạt ảnh khi thay đổi chế độ xem văn bản
- 17. Cách hoàn nguyên tệp về phiên bản trước mà không ghi đè thay đổi hiện tại?
- 18. Máy chủ Rails không thấy thay đổi mã và tải lại các tệp
- 19. Cách tải lại các mảnh vỡ vào hậu trường sau khi thay đổi hướng
- 20. Cách đọc tệp và ghi vào tệp văn bản?
- 21. Thực hiện băm bản ghi cơ sở dữ liệu để theo dõi xem bản ghi đã thay đổi hay không
- 22. Làm cách nào để lập trình làm mới/tải lại dự án VS sau khi sửa đổi tệp cơ bản?
- 23. Cách đọc và ghi đè tệp văn bản trong C?
- 24. cách thay đổi chiều cao iframe khi tải?
- 25. Ghi lại âm thanh và phát lại bằng thay đổi độ cao
- 26. Làm cách nào để mở tệp nhị phân trong Perl, chỉ thay đổi byte đầu tiên và ghi lại?
- 27. Cách xem tệp sau khi tải tệp lên App_Data/Tải lên trong MVC 3 bằng Razor?
- 28. mở trình duyệt tự động và tải lại khi các tập tin thay đổi với grunt
- 29. Thay đổi updated_at trong một bản ghi Rails
- 30. AngularJs & Ionic: Stop/Restart $ timeout khi thay đổi và quay lại xem
nếu 'index.ts' là một thể hiện rõ ràng, làm thế nào tôi có thể giết nó và khởi động lại – elaijuh
@elaijuh trong lý thuyết cùng một lệnh này nên thực hiện thủ thuật, khi nodemon được cấu hình để thực hiện lệnh tùy chỉnh (trong trường hợp này là nút-ts) thay vì lệnh nút mặc định, nó sẽ tắt quá trình và bắt đầu một quy trình mới mỗi lần tìm thấy thay đổi trên biểu thức đồng hồ trừ biểu thức bỏ qua :) – HeberLZ
bạn cũng có thể tạo tệp nodemon.json với tất cả các tùy chọn được đề cập trong đó như sau: '{ " đồng hồ ": [" src/**/*. ts "], " bỏ qua ": [" src/**/*. spec.ts "], " exec ": "ts-node ./app-server.ts" } 'và chỉ cần gõ 'nodemon' –