Đối với mục đích báo cáo, tôi muốn kết hợp một số siêu dữ liệu với một con đường Ember, và muốn làm điều đó như sau:Thêm và lấy dữ liệu từ các tuyến đường Ember
this.route('list', { path: '/list', description: 'Master List' });
sau đó truy cập vào tài sản description
này từ những nơi như tự định tuyến hoặc từ các nơi khác, chẳng hạn như móc didTransition
trên bộ định tuyến ứng dụng. Tôi đã xem xét nguồn cho Router và Route và không thể nói tôi thực sự hiểu nó, chắc chắn cũng không đủ để hiểu cách lấy các thuộc tính tùy chỉnh được chỉ định theo cách này. Tôi thấy có một đối tượng được gọi là DSL, rõ ràng là this
của số this.route
được chỉ định trong phương pháp map
trên Router
, nhưng không thể xem cách nhận từ đây đến đó. Từ trong một lớp con của Ember.Route
, tôi thấy các thuộc tính được gọi là this.router
và this.router.router
, nhưng không rõ ràng về những điểm này.
Hoặc, sau đây cũng sẽ làm việc nếu điều đó cho phép tôi làm những gì tôi muốn:
this.route('list', { path: '/list' }, function() {
this.description = "Master List";
});
Tôi có thể kết hợp các thuộc tính tùy chỉnh với một lộ trình quy định tại Router#map
, và nếu như vậy như thế nào?
Tôi có thể thấy bạn đã cố gắng đi qua mã nguồn để thử làm việc nó - vì vậy tôi mang nó cho bạn thoải mái mở rộng/sửa đổi các triển khai mặc định của Ember.Router/Ember.Theo dõi và triển khai các phiên bản của riêng bạn EmberDSL - sẽ triển khai/thay đổi rất nhiều API riêng tư - để đạt được mục tiêu cuối cùng mà bạn đang theo đuổi. Bạn sẽ phải giữ cho việc triển khai của bạn được cập nhật với những thay đổi trong Ember - luôn đảm bảo rằng bạn đã làm việc khi bạn nâng cấp .. Đây có phải là điều bạn sẵn sàng làm để có được kết quả mong muốn không? – jmurphyau