当我通过grunt-contrib-jasmine运行这个Jasmine规范时,我收到错误 TypeError:尝试分配给readonly属性。指向我设置selectedIndex属性的行:
it('does something', function () {
setFixtures('<select id="selectId"><option>Text</option></select>');
var selectDOM = document.getElementById('selectId');
selectDOM.selectedIndex = 0;
// stripped some code here...
});
有人知道我在这里缺少什么吗? 我使用 phantomjs v1.9.8 , grunt-cli v0.1.13 和 grunt-contrib-jasmine v0.9.2 。
答案 0 :(得分:4)
知道了,我犯了一个错误,但由于现在很难找到我现在会在这里留下我的问题和答案。尽管如此,请完全删除它。
我在传入getElementById()函数的值中输入了一个拼写错误,因此变量selectDOM为null。由于某种原因,这导致错误“ TypeError:尝试分配给只读属性。”。
我很难看到拼写错误,错误信息在这种情况下会产生误导,因此其他人可能会遇到同样的问题。