我使用John papa angular style guide我的控制器看起来像:
遵循风格约翰爸爸风格控制器风格指南:
function testController() {
var vm = this;
vm.model = { name: "controllerAs vm test" };
}
Run Code Online (Sandbox Code Playgroud)
我的测试代码如下:
describe('Controller: testController', function () {
beforeEach(module('myApp'));
var testController;
beforeEach(inject(function ($controller) {
scope = {};
testController = $controller('testController', {
});
}));
it('should have vm.model defined and testController.vm.model is equal to controllerAs vm test', function () {
expect(testController.vm).toBeDefined();
expect(testController.vm.model).toBeDefined();
expect(testController.vm.model.name).toEqual("controllerAs vm test");
});
});
Run Code Online (Sandbox Code Playgroud)
结果:
测试失败:结果消息:预期未定义要定义.在堆栈
所以我的问题是我们如何测试vm.model和其他变量呢?我没有在指南中找到适当的指导线:控制器
unit-testing jasmine angularjs angularjs-scope karma-jasmine
在我当前的项目中,我们几乎在每个页面中都使用了 jqGrid。我们使用网格的完整丰富的功能集,包括复杂的网格内联行编辑、下拉、复选框和其他控件、排序、列过滤等。
现在我们希望将我们的项目转换为 angular 2,但我们的主要问题是替换 jqGrid 的丰富功能集。如果所有功能都可以在基于 angular 2 的网格中完成,那么在开始之前我需要做一些 POC。
如何在 Angular 2+ 中使用 jqGrid?
我在angularjs 2组件中遇到Jquery UI datepicker的问题.
它显示日期日历的更改日期,但不更新基础ngModel:dateSelected.
dateSelected: string = '';
Run Code Online (Sandbox Code Playgroud)
这里的日期选择器输入字段是:
<input type="text" class="form-control" [(ngModel)]="dateSelected" name='datepicker1' id='datepicker1' placeholder="Select a date"/>
Run Code Online (Sandbox Code Playgroud)
我正在尝试将此选定日期从this.dateSelected模型设置为第二个日期选择器,它不起作用.
$("#datepicker2").val(this.dateSelected);
Run Code Online (Sandbox Code Playgroud)
另一方面,如果我通过JQuery val方式读取所选日期,它可以正常工作.
var selectedDateInPicker = $("#datepicker1").val();
$("#datepicker2").val(selectedDateInPicker);
Run Code Online (Sandbox Code Playgroud)
这是代码plunker:https://plnkr.co/edit/iLAFa8yrCLeTcd27G8bY ? p = preview
你能帮忙吗?