草庐IT

ember-qunit

全部标签

javascript - ember if 或语句

在ember中使用条件时,是否可以使用OR?{{#iffooORbar}}或{{#iffoo||bar}}docs里面好像什么都没有. 最佳答案 您应该将逻辑移至您的ControllerApp.SomeController=Em.Controller.extend({foo:true,bar:false,fooOrBar:Em.computed.or('foo','bar')});将模板逻辑保持在最低限度{{#iffooOrBar}} 关于javascript-emberif或语句,我们

javascript - Ember.js 中按钮的绑定(bind)启用状态

我刚开始接触Ember.js,我遇到了一些我确信我不理解的事情。我有一个选定的对象Controller。它有内容,是一个Ember.Object,是当前选择的模型。该模型有一个属性(isDirty),基本上我希望我的表单上的保存按钮仅在对象变脏且需要保存时才启用。我已经很好地绑定(bind)了表单,但是保存按钮上的isEnabledBinding属性要么没有做任何事情,要么我没有正确连接绑定(bind)。我准备了一个jsfiddle来演示我的基本设置。http://jsfiddle.net/blargity/fqc73/1/如何让按钮仅在isDirty为真时启用?如果所选对象Contr

javascript - 使用 Ember 数据重新加载模型

我正在尝试使用记录的model.reload()函数轮询更多数据App.ModelViewRoute=Ember.Route.extend({actions:{reload:function(){this.get('model').reload();}}});但我收到一条错误消息说...undefinedisnotafunctionTypeError:undefinedisnotafunction有没有更好的方法,我似乎无法从路由中以这种方式访问​​模型?这是路由器App.Router.map(function(){this.route('video',{path:'/videos/:

javascript - Ember.js - "Cannot perform operations on a Metamorph that is not in the DOM"由模板引起

我一直遇到Ember.js抛出错误的问题:UncaughtError:CannotperformoperationsonaMetamorphthatisnotintheDOM.我找到了thesetwoSO问题,这两个问题都涉及直接操作DOM,而在我的应用程序中并非如此。搜索错误消息还会返回与相同类型的直接DOM操作相关的许多Github问题。 最佳答案 直到我偶然发现thisissue,我才感到茫然。在Github上来自search与错误消息完全无关。基本上,错误归结为包含在HTML注释中的Handlebars表达式。用代码说起来可

javascript - ember-qunit 测试前后如何调用 hook?

我必须在所有测试开始之前执行一些代码。所以我需要使用QUnit钩子(Hook)before但在ember-qunit中唯一可用的回调是beforeEach和afterEach。我该如何执行? 最佳答案 当我写下myfirstcomment在这个问题上,存储库是这样的:qunit-module.js.所以似乎不支持before和afterHook。所以mysuggestion在module函数之前启动管理器,如thistwiddle所示.但是,5天前,trentmwillis提交了commit现在看来master有before和aft

javascript - 在 QUnit 测试中设置 PhantomJS viewportSize

我需要在不同的视口(viewport)尺寸下测试我的脚本。在我的测试中,我想通过设置page.viewportSize来更改PhantomJS的视口(viewport)大小。我正在通过grunt-contrib-qunit运行测试,但在我的测试代码中无法访问PhantomJS。有没有办法访问它? 最佳答案 现在在dist版本上是不可能的。grunt-contrib-qunit依赖于grunt-lib-phantomjs,它不允许这个特性。但是,aninterestingcommit(6天前)来自github上的bdowling可用。

javascript - 如何在不使用 QUnit.push 的情况下为 QUnit 编写新的断言函数?

我想为QUnit编写自定义assert函数来检查actual字符串是否与expected正则表达式匹配。在thisquestion的帮助下我编写了第一个按预期工作的基本版本:QUnit.extend(QUnit.assert,{matches:function(actual,regex,message){varsuccess=!!regex&&!!actual&&(newRegExp(regex)).test(actual);varexpected="Stringmatching/"+regex.toString()+"/";QUnit.push(success,actual,expe

javascript - 我如何使用自己的 JavaScript 库处理 "think in QUnit"?

我如何使用自己的JavaScript库“在Qunit中思考”?我熟悉使用javascript进行开发,但现在我想开始使用Qunit(使用我的HTML/JavaScript应用程序)。我制作自己的图书馆。我使用公共(public)函数和私有(private)函数。我还使用异步函数(事件监听器和回调)similartojQuery:varmylib;(function(){//...})();我不知道如何组织它。这里有几个问题来阐明我正在寻找的答案类型:如何对私有(private)函数进行单元测试?如何合并数百个测试?根据您的经验,组织测试的最佳方法是什么?我应该使用多个HTML文件吗?我

javascript - 在 Ember 中以编程方式创建新路线

我正在使用从服务器中提取的json文件来配置我的网站,并告诉每个页面它的标题是什么。json文件如下所示:[{"route":"student","title":"StudentInfoPage"},{"route":"payments","title":"PaymentsandPricing"},{"route":"policy","title":"Mine"},{"route":"biography","title":"AboutMe"}]用于使用以下代码创建导航栏:App.MenuController=Ember.ArrayController.create();$.get('c

javascript - Ember 数据不允许 hasMany 关系中的重复条目

我有以下模型:#order/model.coffeeOrder=DS.Model.extend{line_items:DS.hasMany'product',{async:true}}有时我想将一些产品添加到订单中。我发现我只能添加一次产品,再次添加相同的产品不起作用:#product/route.coffee...actions:#NotactuallymycodebutillustratestheproblemaddToCart:(product1,product2)->order=@modelFor'order'console.logorder.get('line_items.l