2016-05-19 45 views
21

Tôi đang làm việc với Angular2 quick start bản trình diễn sử dụng TypeScript. Mọi thứ đều hoạt động tốt với điều này nhưng sau khi hoàn thành bản demo tôi đã thấy một thông báo trong bảng điều khiển trình duyệt của tôichính xác những gì sẽ xảy ra khi `enableProdMode()`

Góc 2 đang chạy trong chế độ phát triển. Gọi enableProdMode() để kích hoạt chế độ sản xuất.

Tôi đã thực hiện việc này với sự trợ giúp của this answer.

import { bootstrap } from '@angular/platform-browser-dynamic'; 
import { AppComponent } from './app.component'; 
import { enableProdMode } from '@angular/core'; 

enableProdMode(); 
bootstrap(AppComponent); 

Câu hỏi

  1. gì chính xác xảy ra khi ứng dụng di chuyển sang chế độ sản xuất?
  2. Tôi chưa thấy bất kỳ thay đổi nào về hành vi ứng dụng ngoại trừ xóa thông báo trên bảng điều khiển?

Mọi người có thể giải thích được không?

+2

Câu trả lời của Günter có phù hợp với kỳ vọng của bạn không? http://stackoverflow.com/questions/34868810/what-is-diff-between-production-and-development-mode-in-angular2 –

+0

@ThierryTemplier Tôi đã mong đợi điều này khi kích hoạt chế độ prod nhưng phát hiện thay đổi vẫn chạy sau ' enableProdMode() '. Tôi đã sửa đổi một tệp sau khi bật tính năng này, trình duyệt sẽ tự động làm mới. –

Trả lời

2

Theo 2 Documentation góc: https://angular.io/docs/ts/latest/api/core/index/enableProdMode-function.html

chế độ phát triển Disable kiễu góc, mà tắt khẳng định và kiểm tra khác trong khuôn khổ.

Một xác nhận quan trọng về việc vô hiệu hóa này xác minh rằng thẻ phát hiện thay đổi không dẫn đến thay đổi bổ sung đối với bất kỳ ràng buộc nào (còn được gọi là luồng dữ liệu một chiều).

+1

Cảm ơn. nhưng nó vẫn phát hiện những thay đổi. –

7

Bật chế độ sản xuất sẽ không tắt phát hiện thay đổi. Tính năng này là nền tảng của Angular2 để đồng bộ hóa mẫu với trạng thái của lớp được liên kết.

Với phương thức sản xuất, chỉ có một lần chạy thử được thực hiện không phải là hai ...

+2

Tôi xin lỗi nhưng không rõ ràng hơn ... –

+1

Tôi có nghĩa là phát hiện thay đổi luôn được sử dụng cả trong chế độ dev và prod. Trong chế độ dev, phát hiện thay đổi được chạy một lần và lần thứ hai ngay sau đó. Phát hiện thay đổi được kích hoạt bởi ZoneJS. Có lẽ câu trả lời tuyệt vời của Mark Rajcok này có thể giúp bạn hiểu những gì xảy ra dưới mui xe: http://stackoverflow.com/questions/34569094/what-is-the-angular2-equivalent-to-an-angularjs-watch. Tôi biết rằng nó không rõ ràng ;-) –

1

enableProMode

chế độ phát triển Disable kiễu góc, mà tắt khẳng định và kiểm tra khác trong khuôn khổ.

Một xác nhận quan trọng về việc vô hiệu hóa này xác minh rằng đường phát hiện thay đổi không dẫn đến thay đổi bổ sung đối với bất kỳ ràng buộc nào (còn gọi là luồng dữ liệu một chiều).

@stable

isDevMode

Returns liệu kiễu góc ở chế độ phát triển. Sau khi được gọi một lần, giá trị bị khóa và sẽ không thay đổi nữa.

Theo mặc định, điều này đúng, trừ khi người dùng gọi enableProdMode trước khi gọi điều này.

@experimental APIs liên quan đến ứng dụng bootstrap hiện đang được theo dõi .

+1

Có lẽ bạn có thể xây dựng nó nhiều hơn một chút. – JiriS

Các vấn đề liên quan