typescript - Các tệp ngfactory tự nó có cần được biên dịch trong quá trình biên dịch AOT của Angular 2 không?
Mỗi khi tôi biên dịch một ứng dụng Angular 2 với ngc, nó tạo ra các tệp .ngfactory.ts cho từng component và sau đó biên dịch tất cả TypeScript sang JavaScript.
Tuy nhiên, khi tôi chạy 'ngc' lần đầu tiên, nó tạo ra các tệp ngfactory, nhưng chỉ biên dịch các tệp khác sang JavaScript. Điều này có nghĩa là không có tệp JavaScript ngfactory nào được biên dịch ra.
Ở lần chạy thứ hai, nó cũng biên dịch các tệp ngfactory (có lẽ vì chúng được tạo trong cùng thư mục với các tệp nguồn).
Câu hỏi của tôi là: Chính các ngfactory có nên được biên dịch hay không? Nó có ảnh hưởng đến ứng dụng theo bất kỳ cách nào không?
Câu trả lời #1
Các tệp ngfactory đã là kết quả biên dịch, vì vậy bạn không nên biên dịch chúng lần nữa.
Tốt nhất là chỉ định một thư mục đặc biệt cho các tệp ngfactory.ts. Đặt điều này trong tsconfig.json của bạn
"angularCompilerOptions": {
"genDir": "compiled"
}
Điều này sẽ bảo ngc đặt các tệp đã tạo vào một thư mục compiled.
