我很难将Ember.js与第三方控件(fancytree)集成。在这种情况下,我希望树节点在主要内容区域上显示不同的Ember视图。
现在,在渲染节点时,我将它们包装成指向'#/ a','#/ b'等的标签。其他选项我虽然会使用window.location = url;
来切换到合适的路线。
它正在运作,但我正在学习Ember,并想知道这是否是最佳方式。
这样做是否有“Ember”方式?或者我正在做的是通常如何做到这一点?
谢谢!
答案 0 :(得分:1)
我不确定我的方式是不是正确的Ember方式,但它对我有用。我在命名空间(在我的情况下是'App')中添加了应用程序控制器:
App.ApplicationController = Ember.ObjectController.extend({
init: function() {
this._super();
App.controllerHelper = this;
},
});
现在,您可以使用此帮助程序从任何地方调用transitionToRoute
方法:
App.controllerHelper.transitionToRoute('your route' [, dynamic id]);
我希望这有帮助,如果有更好的方法,请纠正我。
答案 1 :(得分:0)
使用History API。 Ember的路由器应该能够获取状态变化并相应地进行转换。