javascript - Sinon如何存根dom元素'getelementbyid'
问题描述
如何存根 dom 元素,我使用js dom
and sinon
?如何使用 id 存根文档元素。
方法
window.identityServer = (function () {
const identityServer = {
getModel () {
const modelJson = document.getElementById('modelJson')
const encodedJson = typeof modelJson.textContent !== undefined ? modelJson.textContent : modelJson.innerHTML
},
}
return identityServer
})()
测试
beforeEach(() => {
sinon.stub(document, 'getElementById').returns({textContent: 's'})
sinon.stub(window, 'identityServer')
})
错误 :
TypeError: Cannot read property 'textContent' of null
解决方案
加个id怎么样?
sinon.stub(document, "getElementById").withArgs("modelJson").returns({textContent: "s'})
我之前没有 id 存根文档,但错误消息是s.getElementsByTagName is not a function
推荐阅读
- python-3.x - "__new__" 创建一个无限递归循环
- javascript - Outlook 桌面应用程序加载项,用于将邮件地址插入 Outlook 新邮件到地址栏
- objective-c - 通过 iOS 应用程序中的代理引导流量
- php - 如何使用php发送包含其他输入的表单的可排序列表值
- java - 获取firebase数据时出现空指针异常
- wordpress - How to display four level pages category in WordPress
- javascript - 在模式框/弹出窗口中查看值 - HTML、JavaScript、PHP 和 JavaScript
- sql - 在 exasol 中将多行卷成单行
- regex - mit-scheme 字符串中的多个正则表达式匹配
- kotlin - kotlin getparameters函数不起作用