问题标签 [ember-router]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ember.js - 关于 Ember.js 指南中的 {{linkTo}}
我正在阅读Ember.js 模板指南。在上述链接的第一个示例的车把部分,他们使用
但我想
会工作。
为什么我需要第二个参数'post'?
我读了解释:
如果路线具有动态段,则表示该段的模型。默认情况下,Ember.js 将用对象的 id 属性的值替换段。
但我不能将此解释与上述问题联系起来。
ember.js - Ember.js pre4,怎么做之前pre2 connectOutlet的东西
在 pre2 中,假设我在路由器外部有这个应用程序代码:
也就是说,我用我的数据填充添加到“应用程序”模板中的名为“模态”的插座。
现在,在 pre4 中,我没有参考路由器创建的控制器。您将如何填充路由器外部的插座?
我可以要求路由器进行转换,但我不想修改 URL,因为我只是在当前内容上打开一个模式。
编辑:
这就是我想出的临时修复方法,通过从 App.Router.router 对象查找应用程序视图.. 显然这是一个肮脏的黑客,有人知道在 pre4 中最好和正确的方法吗?
ember.js - emberjs 数组控制器
我正在使用最新的第四版 ember。在我的应用程序中,我有一些部分未连接到路由器,但我想将所有应用程序保持在一种样式中ArrayController
并Em.CollectionView
为它们使用和使用。
我试图做这样的事情:
然后我得到一个错误,“控制器”没有容器属性。
ArrayController
没有就可以使用Em.Router
吗?
javascript - Ember.js pre4 路由器获取其他控制器
可能重复:
从其他控制器访问控制器
在 Ember pre2 和之前的旧路由器样式中,您可以从路由器获取其他控制器,所以如果我在一个名为的控制器中,PeopleController
我可以做这样的事情
或从调试控制台
这两个都有效。Pre4 / 新的路由风格似乎打破了这一点。如何使用新路由器和 pre4 获得此功能?
model-view-controller - Ember.js 递归控制器和视图
假设我有一个Action
对象列表,它对应于 Ember 模型。每个都有几个属性(时间戳)和一个detail
属性,可以递归地包含更多detail
的s(任意深度嵌套)。您可以将详细信息视为嵌套列表。
我想编写一个 UI,允许detail
对任何Action
对象进行轻松编辑(自动完成值、轻松复制和粘贴、重新排序元素等)。
现在,我的DetailView
模板将递归地渲染额外DetailView
的 s:
所以每个DetailsView
对应于Details对象树中的一个节点。
但我不清楚如何将控制器添加到组合中——我需要存储其他状态/实现功能(例如,转换 Detail 对象中的值以在 DetailsView 中显示;处理插入/删除/重新排序元素的事件;更改详细信息树的结构)既不属于模型也不属于视图。
理想情况下,我将有一个DetailsController
作为代理的Details
per DetailsView
。我可以动态实例化控制器并在视图模板中设置它们的内容吗?我对新 Ember 路由器的理解是在给定的路由中设置控制器和插座;但是,这似乎不适用于这里,因为根本没有进行路由。欢迎所有关于如何处理递归控制器/视图/路由的建议/见解。
我已经查看了EmberJS Nested Views and Controllers,但这表明我ArrayController
对所有Detail
s 都有一个,甚至跨Action
s ......这也不会保留嵌套细节的树结构。
在升级到 Ember 0.9.6 后,我还查看了把手模板中的递归视图不起作用,但该解决方案没有说明任何关于控制器的内容。
ember.js - ember新路由器
我有一个关于 Ember 路由和控制器的问题。我刚刚写了一个小应用程序来熟悉新的路由器。因此,我构建了一个按钮,通过单击它可以转换到另一个状态。
我现在的问题是:该get
方法返回什么?. 显然是一个实例,PostController
但一方面控制器没有transitionTo()
方法,另一方面没有任何意义。
ember.js - emberjs pre-4 和 ember-data:浏览器刷新没有数据
如果我从索引浏览到游戏,则会显示数据,因为{{#linkTo}}
s 上下文,但如果我正在刷新站点,则每次游戏名称都不会出现。
编辑:这是一个小提琴,但不幸的是,带有夹具适配器的小提琴版本可以正常工作,即使肯建议从游戏模板中删除模型。
/api/games 返回的数据如下:
以及从 /api/games/1 返回的数据
有人有想法吗?
ember.js - 用于 pre4 的 Ember 路由器
我正在尝试使用 Ember 的 pre4 版本,但我卡在了路由器上。
我收到一条错误消息Uncaught TypeError: Cannot Call method 'map' of undefined
。
相关代码:
相关文档。
我已经加载了 Ember.js 和 jQuery。Ember pre4 也会抛出错误:Uncaught TypeError: Object prototype may only be an Object or null
.
难道我做错了什么?指南只是没有更新吗?
我到目前为止的代码:
ember.js - Ember.js pre.4、RESTAdapter 和 hasMany 关系
我正在尽最大努力在最新版本的 ember.js 和使用 RESTAdapter 的 ember-data 中找到和/或拼凑一个 hasMany/belongsTo 关系的工作 jsfiddle。到目前为止,我已经找到了@zgramana 的pre.4 基线小提琴,它使新路由器经过了一些探索,还有一个@sly7-7 小提琴,它利用了必要的 DS 关系,但为简洁起见绕过了路由器。
可以在这里找到我笨拙的 WIP 尝试将这些拼凑成一个有凝聚力的示例:http: //jsfiddle.net/W2dE4/5/。我显然是 ember.js 的新手,这个小提琴充满了错误,所以请原谅缺乏技能。
如果有人能指出我正确的方向来让这个小提琴工作,或者链接到 pre.4 的工作示例与 RESTAdapter 和 hasMany 关系,我将永远感激你的慷慨。
非常感谢你!
javascript - 在 ember 中访问控制器或视图的实例
我的理解是,当我跑步时
创建了一个类 CheeseController
,当我激活 Cheese 路由时,会创建该类的一个实例,这是我在与车把模板中的控制器交谈时实际接触到的。
是否可以从 javascript 控制台(或从我的程序中)直接访问该实例化对象?更一般地说,Ember 自动生成的对象在哪里?