Làm cách nào để truy cập phiên bản của bộ định tuyến Ember mới? Các tài liệu API dường như là tham chiếu đến bộ định tuyến cũ hoặc không chính xác: http://emberjs.com/api/classes/Ember.Router.htmlVí dụ truy cập của Bộ định tuyến Ember mới
Trả lời
RouterV2 không dễ dàng truy cập qua hằng số toàn cầu, khiến việc thực hiện theo cách 'sai' trở nên khó khăn hơn. Điều quan trọng cần lưu ý là bạn không nên truy cập vào bộ định tuyến (hoặc bất kỳ thứ gì khác) thông qua một biến toàn cầu. Làm như vậy là một thực tế không tốt, dẫn đến mã rất khó kiểm tra. Thật không may với các bộ định tuyến cũ nó đã được khá dễ dàng để làm một cái gì đó như App.router.transitionTo('whatever')
- bạn có thể tìm thấy các ví dụ về rằng tất cả các nơi, nhưng nó không phải là một ý tưởng tốt.
Thay vì làm việc với tham chiếu chung, ember sẽ tiêm tham chiếu cục bộ vào bộ định tuyến chỉ ở những nơi cần thiết.
- Từ mô hình: Không thể tiếp cận. Mô hình không nên được nói chuyện với các bộ định tuyến
- Từ một bộ điều khiển:
router = this.get('target')
- Từ một cái nhìn: Xem không nên truy cập vào router, nhưng sự kiện nó gửi đến bộ điều khiển sẽ bong bóng lên. Ví dụ:
this.get('controller').send('search', term)
- Từ mẫu: Sử dụng
{{action}}
hoặc{{#linkTo}}
người trợ giúp để gửi sự kiện (qua bộ điều khiển) hoặc chuyển sang url khác.
Để cụ thể hơn, xem các ghi chú về điều này cam kết: https://github.com/emberjs/ember.js/commit/5becdc4467573f80a5c5dbb51d97c6b9239714a8
** Update **
tôi đặt lại với nhau nói chuyện một tia chớp trên với chi tiết hơn về các bộ định tuyến mới cho tháng giêng EmberNYC meetup - slide đang ở đây: How I learned to stop worrying and love the router
tôi tin rằng công trình này ở khắp mọi nơi:
App.Router.router.transitionTo('home')
Tôi sử dụng nó trong chế độ xem. Tôi biết có một chút mùi mã ở đây. Tuy nhiên, nó hoạt động.
Chắc chắn là một mùi mã. Thay vào đó, hãy gửi một hành động và xử lý nó trong một lộ trình để chuyển đổi. –
Bạn có thể thử này:
App.__container__.lookup('router:main').transitionTo('name_of_your_route');
Việc này có thể thực hiện để gỡ lỗi nhưng nên tránh trong mã sản xuất. –
- 1. Truy cập bộ định tuyến ember mới trong bảng điều khiển
- 2. Làm thế nào để truy cập bộ điều khiển từ tuyến đường trong Ember?
- 3. Phân tích tham số url với bộ định tuyến Backbone - ví dụ regex
- 4. ASP.NET MVC: Ví dụ về bộ điều khiển truy cập từ màn hình
- 5. Ví dụ được định dạng đúng cho truy cập email Python iMAP?
- 6. Hiển thị chế độ trực tuyến và ngoại tuyến (ví dụ: máy bay) trong Ứng dụng Ember.js
- 7. Tuyến đường và tuyến đường ray Ember
- 8. ASP.NET MVC 3 định tuyến: ngăn chặn ~/truy cập nhà?
- 9. Mục đích của mẫu khách truy cập với các ví dụ
- 10. Cách truy cập các thuộc tính của các lớp siêu Python, ví dụ: qua __class __.__ dict__?
- 11. Ví dụ về định nghĩa hàm trong hàm tạo dữ liệu của một kiểu mới
- 12. Sử dụng ví dụ Android của RtpStream
- 13. SQLAlchemy - chọn cho ví dụ cập nhật
- 14. Cập nhật dữ liệu được nhúng, ví dụ sysdata.rda
- 15. Đọc hiệu suất truy cập từ C#: Ví dụ không tồn tại trong danh mục được chỉ định
- 16. Ví dụ yêu cầu không đồng bộ
- 17. IE9 treo ví dụ Flask cục bộ
- 18. Cài đặt danh bạ (ví dụ: bộ lọc chỉ liên hệ) Ví dụ về mã Android
- 19. Làm cách nào để truy cập bộ định tuyến toàn cầu trong js đường trục?
- 20. Python: biến truy cập lớp qua dụ
- 21. Nơi lấy các ví dụ phát video trực tuyến (GStreamer)?
- 22. Ví dụ rò rỉ bộ nhớ AS3
- 23. Định nghĩa và ví dụ đóng cửa
- 24. Khóa phiên dịch toàn cầu và truy cập dữ liệu (ví dụ: đối với mảng NumPy)
- 25. Ví dụ Java SSHD
- 26. Ví dụ về Ứng dụng của FasterCSV
- 27. Các tuyến đường lồng nhau trong Ember JS và Ember Rails
- 28. Ví dụ/Hướng dẫn của Hunspell
- 29. Truy cập 'Ngoại tuyến' với HybridAuth
- 30. Đầu ra ví dụ của Z3
Và từ đường nó có thể truy cập như 'get (this, 'router)' – Pavel