我想知道在Ember过渡到另一条路线的最佳做法是什么。目前在我的控制器中,我调用了ember数据存储,然后使用transitionToRoute函数转换到另一个路径,但是现在我看到你在组件中注入了路由器作为服务。这是我应该移动这个逻辑或控制器的地方仍然适合这个吗?
答案 0 :(得分:5)
最佳做法是使用Route
加载和变异数据以及转换。请记住:数据下降,操作起来。
答案 1 :(得分:0)
始终最佳做法是使用route
。如果您被迫在智能组件中的任何其他位置使用转换,则可以使用ember-router-service-polyfill addon。
ember install ember-router-service-polyfill
然后您可以注入router
服务并使用transitionTo
方法。
import Ember from 'ember';
export default Ember.Component.extend({
router: Ember.inject.service(),
actions: {
next() {
this.get('router').transitionTo('other.route');
}
}
});