Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Routing Ember.js路由_Routing_Ember.js - Fatal编程技术网

Routing Ember.js路由

Routing Ember.js路由,routing,ember.js,Routing,Ember.js,我正在努力寻找任何好的Ember.js路由示例 我应该使用像这样的插件还是我个人喜欢的外观 我看到有一个routes集合是State对象的一部分,但我找不到任何关于如何使用它的示例。编辑:由于Ember.js路由器发生了重大变化,这个答案已经过时,因为大约在1.0预发行版。ember.js的现代版本应该 我想这(至少现在)是非常私人的。 我喜欢根普顿的余烬路线管理器。如果你需要帮忙,我可以帮你。 连同他的余烬布局包以及,他们一起工作得很好 我在我的应用程序中使用,因为: 它与ember.js配

我正在努力寻找任何好的Ember.js路由示例

我应该使用像这样的插件还是我个人喜欢的外观


我看到有一个routes集合是State对象的一部分,但我找不到任何关于如何使用它的示例。

编辑:由于Ember.js路由器发生了重大变化,这个答案已经过时,因为大约在1.0预发行版。ember.js的现代版本应该

我想这(至少现在)是非常私人的。 我喜欢根普顿的余烬路线管理器。如果你需要帮忙,我可以帮你。 连同他的余烬布局包以及,他们一起工作得很好

我在我的应用程序中使用,因为:

  • 它与ember.js配合得很好
  • 是的
  • 它被一些更大的ember.js应用程序使用(例如,查看)

有关文档,请查看最近在core Ember.js中提供的

路由,请参阅Tom Dale的

核心开发者Yehuda Katz写了一篇关于新路由特性使用的文章。这是一个很好的阅读,除了路由还说明了如何将其与控制器集成

为了获得基本想法,下面是一个取自要点的代码示例:

App.Router=Ember.Router.extend({
根目录:Ember.State.extend({
索引:Ember.State.extend({
路线:“/”,
重定向至:“日历.索引”
}),
日历:Ember.State.extend({
路线:'/calendar',
索引:Ember.State.extend({
路线:'/'
}),
首选项:Ember.State.extend({
路由:'/preferences'
})
}),
邮件:Ember.State.extend({
路由:'/mail',
索引:Ember.State.extend({
路线:'/'
}),
首选项:Ember.State.extend({
路由:'/preferences'
})
})
})
});
//如果用户使用URL导航到页面
//www.myapp.com/,您将从root.calendar.index状态开始。
//重定向到calendar.index状态将导致URL错误
//更新至www.myapp.com/calendar
路由器。转换到(“首选项”);
//URL=>www.myapp.com/calendar/preferences
router.transitiono('mail.preferences');
//URL=>www.myapp.com/mail/preferences
router.transitiono('index');
//URL=>www.myapp.com/mail

我强烈建议在余烬网站上使用本指南:


我相信这是一个非常新的内容——几周前,当我第一次尝试理解余烬路由时,我当然没有注意到它

余烬路线在圣诞节期间完全改变了。他们发布了一些新文档以提供帮助,但删除了所有旧教程。我猜(在前面的答案中)旧的做事方式将被弃用。

我不太确定,SC名称空间在Ember 0.9.6中被删除了。这意味着他们不再能很好地配合,这是离开Sproutcore的一部分。我必须强调。我可以直接将名称空间化名,但我想知道是否有一个更新的项目会更好。我最初打算使用sproutcore路由,直到0.9.6版本,我使用了ember routemanager和layoutmanager。我喜欢他们一起玩的方式。如果出现任何问题,我将提供补丁。据我所知,这种技术不再适用于包括本机路由在内的ember.js 0.9.8.1,请参阅下面pangrantz的答案,了解***官方***解决方案;)是的,当然,这是正确的方法,现在,当我写这个答案的时候,它是不可用的。