2015-09-29 14 views
5

Sử dụng Ember.2.1.0-beta4Ember ember-views.render-đúp sửa đổi

Tôi nhận được "ember-views.render-đúp sửa đổi" trong một chức năng kích hoạt bởi "didReceiveAttrs" của một tiểu hợp phần.

Tôi đã theo dõi bảng sao kê this.set('_columns', columns) kích hoạt lỗi. Tuy nhiên, AFAIK đây là lần đầu tiên thuộc tính được sửa đổi.

Để gỡ lỗi, tôi đã tạo một người quan sát cho thuộc tính đã sửa đổi và đặt điểm ngắt tại đó. Tuy nhiên, người quan sát chỉ được gọi một lần và lỗi vẫn còn đó, vì vậy có vẻ như đây là cuộc gọi đầu tiên.

Làm cách nào để gỡ lỗi này - đây có phải là lỗi Ember hay không hoặc có các hạn chế khác về cài đặt thuộc tính không rõ ràng trong lỗi không? Lưu ý rằng thuộc tính được sử dụng trong mẫu của thành phần. Ngoài ra, thuộc tính được sử dụng trong các thuộc tính được tính toán khác (ví dụ: [email protected]_columns.[]).

Trả lời

6

Vì lợi ích của hậu thế, câu trả lời trong trường hợp của tôi là: _columns được sử dụng trong mẫu. Do đó, đối với didReceiveAttrs của tiểu hợp phần được gọi, giá trị trước đó của _columns đã được sử dụng.

Thông báo lỗi có một chút gây hiểu lầm, nhưng ý tưởng, tôi nghĩ, là khi bạn bắt đầu hiển thị, bạn không thể thay đổi thuộc tính cho đến khi bạn hoàn tất. Nếu cần, hãy sử dụng Ember.run.scheduleOnce('afterRender', ...).

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