随笔分类 -  JS框架与库件

摘要:获取父组件 获取子组件 相应修改组件 延迟回调 兼容IE1 babel polyfill兼容新接口 vue resource "问题" 处理路由 使用vue resource注意 不同浏览器返回数据格式可能不一样 阅读全文
posted @ 2017-07-07 20:14 JinksPeng 阅读(166) 评论(0) 推荐(0)
摘要:init: controller中初始化方法, //注意该方法是在其他方法之前,所以取不出this,model等值; 跳转:this.transitionToRoute(routename,param); //形式对应如:this.resource('question', {path: 'test/ 阅读全文
posted @ 2014-11-03 15:38 JinksPeng 阅读(142) 评论(0) 推荐(0)
摘要:单元测试被限定在一个范围内,并且不需要Ember应用运行。 使用前准备: 加入Ember-QUnit:获取一系列测试助手帮助单元测试;加入 mian.js; 加入根元素(与集成测试的时候一样):App.rootElement = '#ember-testing'; 设置单元测试: Ember.set 阅读全文
posted @ 2014-10-20 10:38 JinksPeng 阅读(194) 评论(0) 推荐(0)
摘要:emberjs使用的测试工具为qunit.js: 加载:将runner.js添加到Index.html;大致内容: 其中ember-testing是显示原本页面的部分,通过runner.css来设置;在原本页面中将在url最后添加"?test"跳转到测试页面; test.js的基本结构: integ 阅读全文
posted @ 2014-10-16 15:28 JinksPeng 阅读(216) 评论(0) 推荐(0)
摘要:在测试中,如果用到了大量相同的方法返回判断结果,可以将他们简化; 使用push(): 例子: 通过rul筛选:在URL上添加?filter=name-of-test 阅读全文
posted @ 2014-10-15 16:46 JinksPeng 阅读(129) 评论(0) 推荐(0)
摘要:原子性: 当将许多测试用例放到一起测试的时候,可能会因为相互的副作用而出错;这个时候应该尽可能将他们分别放到test()中测试; 对应测试到Dom,应该尽可能地使用#qunit-fixture,因为它会在一次测试完之后自动清除绑定; 分组测试: 在将测试分割之后,考虑到逻辑性,可能需要将他们进行分组 阅读全文
posted @ 2014-10-15 16:06 JinksPeng 阅读(214) 评论(0) 推荐(0)
摘要:模拟操作: elem.trigger(event); elem.triggerHandler(event); triggerHandler的不同: 不会引起事件的默认行为 .trigger() 会操作 jQuery 对象匹配的所有元素,而 .triggerHandler() 只影响第一个匹配元素。 阅读全文
posted @ 2014-10-15 15:31 JinksPeng 阅读(238) 评论(0) 推荐(0)
摘要:同步: 有时候如果我们想判断方法执行的次数,可以通过间接设置expect(n);//可以将expect的参数放到test的第二参数来简化; 同理,除了方法执行次数外,还可以判断事件发生次数; 异步: 在异步上,需要使用asyncTest替代test;同时使用start方法标记,当异步方法返回之后继续 阅读全文
posted @ 2014-10-15 14:23 JinksPeng 阅读(619) 评论(0) 推荐(0)
摘要:QUnit是一个前端测试工具。 判断效果: html基本结构: js基本结构: 判断方法:测试就是要对目标进行判断,qunit中的判断方法主要有: ok(boolean,"info"); QUnit.test( "ok test", function( assert ) { assert.ok( t 阅读全文
posted @ 2014-10-15 13:43 JinksPeng 阅读(215) 评论(0) 推荐(0)
摘要:在某些情况下,我们需要根据数据生成某些效果;由于每个模版的controller可能不同,在不同页面之间跳转可能会无法随即更新的问题。 controller: 直接使用标签:{{}},适用于在子项目内切换的时候及时更新; view: 使用didInsertElement: 适用于在其他页面切换到当前v 阅读全文
posted @ 2014-10-14 14:15 JinksPeng 阅读(150) 评论(0) 推荐(0)
摘要:如下代码会根据model产生不同的table项,在进行其他设置后,一般是根据id来跳转到相应项目子项中; 这时候我们可能需要一额外的按钮而不是直接点击连接进行子项目的前进与后退,可采用如下方法: 方法1: 在对应controller内设置: 然后在相应模版中设置: 方法2: 在对应controlle 阅读全文
posted @ 2014-10-10 19:03 JinksPeng 阅读(197) 评论(0) 推荐(0)
摘要:在已经设置route的情况下,以table为例,可以如下设置,范围为对应的模版; 也可以通过如下新建,其获得的this为所在模版的this; 简单设置: 设置整体的标签: tagName 设置class: classNames:[](适合固定值); classNameBinds[](这个要通过其他属 阅读全文
posted @ 2014-10-10 14:08 JinksPeng 阅读(264) 评论(0) 推荐(0)
摘要:主要用于方便绘制图标,注意是需要付费的; 相关连接: 官网 中文网 祛除自带标识的代码: 去掉线上的点: plotOptions: { series: { marker: { enabled: false } } }, 可能出现的异常 阅读全文
posted @ 2014-10-09 11:17 JinksPeng 阅读(177) 评论(0) 推荐(0)
摘要:除了之前介绍的将数组数据在一个页面中输出的方法,还可以将数组数据分组,按照点击,在不同页面中分别显示,方法为: Model: 例如:Table Router: 设置一个父对象和子对象设置: Route: Template: tables: table: 单个对象输出方式 Controller: 注意 阅读全文
posted @ 2014-10-03 18:54 JinksPeng 阅读(239) 评论(0) 推荐(0)
摘要:说明:属性值绑定(属性值有无引号都可以) 如果是非布尔值: 如果是布尔值: isEnable:enabled; isEnable:enabled:disabled; isEnable::disabled; 阅读全文
posted @ 2014-10-03 16:41 JinksPeng 阅读(353) 评论(0) 推荐(0)
摘要:在模版中写好响应操作触发的action之后,可以在controller:actions中设置了,需要注意的是对数据的操作一般都是对单个object进行操作,所以先要使用笔记1中的方法使用ObjectController。 新增并存储数据: 模版中可以设置 来进行双向绑定,在控制器actions 中设 阅读全文
posted @ 2014-10-03 14:39 JinksPeng 阅读(274) 评论(0) 推荐(0)
摘要:ember中数据一般都是以array的形式存储的,控制器使用,如: 想要在一个页面中输出所有的数据,可以在模版中使用{{#each}}输出Aarray的每个Object,这时时候可能需要对每个Object进行操作,使用ObjectController;可以在每个each中使用itemControll 阅读全文
posted @ 2014-10-03 14:21 JinksPeng 阅读(231) 评论(0) 推荐(0)