我使用console.log()很多,特别是与Ember.inspect()结合使用。 但有一件事我想念: 我怎样才能找出一个对象(类)的types? 例如:在检查Ember.get("controller")时得到类似于<Sandbox.ApplicationController:ember288>东西?
我想将不同的对象存储在相同的控制器内容数组中,并使用适当的视图模板呈现每个对象,但理想情况下是相同的视图。 我正在使用下面的代码输出列表对象。 他们目前是相同的,但我希望能够使用不同的。 <script type="text/x-handlebars"> {{#each App.simpleRowController}} {{view App.SimpleRowView class="simple-row" contentBinding="this"}} {{/each}} </script> 下面是该视图的简化版本。 我没有包括的其他function可以用于任何对象,而不pipe模型。 所以我最好有一个观点(尽pipe我已经阅读了一些有关mixin的文章,如果不能的话可以提供帮助)。 <script> App.SimpleRowView = Em.View.extend({ templateName: 'simple-row-preview', }); </script> 我的第一个testing是允许不同的对象types在“简单的行预览”中结束了大量的条件 – 它看起来很糟糕! 是否有任何dynamic控制迭代我的内容数组时使用的templateName或视图的方式? UPDATE 非常感谢两位受访者。 在视图中使用的最终代码如下。 我的一些模型是相似的,我喜欢在应用程序中能够在模板(或某种“状态”)之间切换的想法。 <script> App.SimpleRowView = Em.View.extend({ templateName: function() { return Em.getPath(this, 'content.template'); }.property('content.template').cacheable(), _templateChanged: function() { this.rerender(); }.observes('templateName'), // etc. }); </script>
有没有人有RequireJS和Ember.js很多成功? 看到Ember喜欢把它的结构分配给一个全局对象,我发现它可以真正的与Requirejs对接。 像Ember的LAB.js会更好吗?
我可以在Ember对象中包含数组,并使用Handlebars显示内容。 不过,我只能用set()来replace数组的内容。 如何使用push / pop / etc来修改数组的内容。 并仍然有UI绑定更新? // JS App.obj = Ember.Object.create({ "things": ["1", "2"], }); App.obj.set("things", ["1", "2", "3"]); // Works App.obj.things.push("3"); // Doesn't Work // HTML + Handlebars {{#with App.obj}} <ul> {{#each things}} <li>{{this}}</li> {{/each}} </ul> {{/with}}
我想要将查询的结果caching在ember-data中。 ( findQuery ) 要说清楚:我不想caching整个模型; 只是查询的结果是什么模型。 这是正确的地方在哪里? 我想在适配器中实现这个,并cachingAJAX调用的结果,但我不认为这是一个好的解决scheme,因为我不想重载加载,也许更新和/或修改模型数据。 我不认为它可能只是返回一个ID列表,并操纵适配器和串行器这个简单的用例似乎是凌乱的! 其实我不希望findQuery被称为特定types的querys。 就像findAll的行为一样。 尼斯会像一个queryShouldBeCached钩子。 有这个好的解决scheme吗?
我有以下路线结构 App.Router.map(function(match) { this.route("days", { path: "/" }); this.resource("day", { path: "/:day_id" }, function() { this.resource("appointment", { path: "/appointment" }, function() { this.route("edit", { path: "/edit" }); }); }); }); 当我在AppointmentIndexRoute内,我正在寻找一种方法来创build一个新的模型,使用一天(父母)模型元日,但因为天模型还不知道这个约会我不确定如何将它们关联直到约会被创build/并且提交被触发。 任何帮助将非常感激
是否有支持Ember.js应用程序的桌面浏览器和版本的文档列表? 也就是说,如果我说在Ember.js中开发的应用程序将支持IE 9 +,FF 11 +,Chrome 17 +,Safari 5+,我会过度还是不足? 如果支持是stream动的,它依赖于什么?
Fire Up Ember.js screencast使用partial , template , render来渲染模板中的模板,但是我仍然不确定我知道在什么时候使用哪一个模板。 在同一个截屏中, partial被解释为使用上下文和所有与当前控制器相关的数据,而render使用指定控制器的匹配模板,上下文等: 有人可以澄清partial , template , render和什么时候(例子)之间的差异使用?
大家好,请检查附上的代码 http://jsbin.com/atuBaXE/2/ 我试图使用{{@index}}来访问索引,但似乎没有编译。 我认为车把支持 {{#each item in model}} {{@index}} {{item}} {{/each}} 这是不工作的,我不知道是否支持{{@index}} 我在用 Ember.VERSION:1.0.0 Handlebars.VERSION:1.0.0 谢谢
在我的第一个EmberJS应用程序工作。 整个应用程序需要一个用户login。我试图包围我的头周围的最佳方式来强制用户现在login(当页面最初加载时)和将来(当用户注销并没有刷新)。 我有处理用户身份validation挂钩 – 现在我有一个呃数据模型和相关的存储,连接,处理授权用户和创build用户“会话”(使用sessionStorage)。 我不知道该怎么做的是强制用户在跨路由转换时进行身份validation,包括根路由中的初始转换。 我在哪里把这个逻辑? 如果我有一个身份validation状态pipe理员,我该如何将其绑定到路由? 我应该有根路由之外的auth路由吗? 注意:让我知道这个问题措辞不好,或者我需要更好地解释,我会很乐意这样做。 编辑:我最终做了一些我认为更多的呃,尽pipe可能是一个混乱的实现。 我有一个auth statemanager存储当前用户的身份validation密钥,以及当前的状态。 无论什么时候需要身份validation,只需要向身份validationpipe理员请求身份validation,然后传递callback函数以使用身份validation密钥运行。 如果用户没有login,它会拉起login表单,直到用户login为止。 这是我正在使用的代码的一些select部分。 需要清理,我遗漏了一些东西。 http://gist.github.com/3741751