3
这里是从ember test --serv
输出错误:为什么我的烬测试给我TypeError:'undefined'不是函数?
Integration | Component | date-time-input: it renders
✘ TypeError: 'undefined' is not a function (evaluating 'elem.getAttribute(name)')
http://localhost:7357/assets/vendor.js:1685
这种情况与我所有的集成测试和验收测试。
如何在没有正常堆栈跟踪的情况下调试此错误? 有没有办法配置烬给我一个体面的堆栈跟踪?
下面是上述错误的测试:
import { moduleForComponent, test } from 'ember-qunit';
import Ember from 'ember';
import hbs from 'htmlbars-inline-precompile';
moduleForComponent('date-time-input',
'Integration | Component | date-time-input', {
integration: true,
});
test('it renders', function(assert) {
// Set any properties with this.set('myProperty', 'value');
// Handle any actions with this.on('myAction', function(val) { ... });
let two = Ember.Object.extend({
someDate: null,
});
this.set('two', two);
this.render(hbs`{{date-time-input model=two field='someDate'}}`);
assert.notEqual(this.$().text().indexOf('2016'), -1);
});
和相应的组件
import Ember from 'ember';
export default Ember.Component.extend({
fieldValue: Ember.computed('model', 'field', function() {
let fieldName = this.get('field');
let value = this.get('model.' + fieldName);
return value;
}).readOnly(),
actions: {
dateChanged: function (value) {
let model = this.get('model');
let field = this.get('field');
model.set(field, value);
},
},
});
{{flat-pickr
dateFormat='F j, Y at'
timeFormat='h:i K'
value=fieldValue
enableTime=true
onChange=(action 'dateChanged')
}}
这里是我的回购,万一有人好奇:https://github.com/NullVoxPopuli/aeonvera-ui
所以,经过调试,我发现它正试图获得该属性是'数据tooltip'仍然不知道为什么getAttribute方法不是'elem'上的函数,但是..我再次查找基础文档(css框架),并看到我错误地配置了我的工具提示。所以我删除了'data-tooltip'绑定,现在所有的测试都通过了。 超级怪异。 – NullVoxPopuli