请问老师HRM无效
来源:3-10 Hot Module Replacement 热模块更新(2)
			hy_wang
2020-08-22
老师我这么写为什么number.js的HRM并不会生效?
// main.js
import count from "./HRM/count"
import number from "./HRM/number"
count()
number()
if (module.hot) {
    module.hot.accept("./HRM/number", () => {
        console.log("仅仅更新number")
        const number = document.getElementById('number')
        console.log(number, 'number')
            // document.body.removeChild(number)
        number()
    })
}
HRM文件下的count.js
export default function count() {
    let div = document.createElement('div')
    div.innerHTML = 1
    div.onclick = () => {
        div.innerHTML = parseInt(div.innerHTML, 10) + 1
    }
    document.body.appendChild(div)
}
HRM文件下的number.js
export default function number() {
    let div = document.createElement('div')
    div.setAttribute("id", 'number')
    div.innerHTML = '200230';
    document.body.appendChild(div)
}
请问老师我如果把number()函数注释掉就可以正常
// 如果放开注释HRM就不会走进这个函数这是为什么
if (module.hot) {
module.hot.accept("./HRM/number", () => {
console.log(“仅仅更新number”)
const number = document.getElementById(‘number’)
console.log(number, ‘number’)
// document.body.removeChild(number)
// number()
})
}
写回答
	1回答
- 
				
						hy_wang
提问者
2020-08-22
老师我明白了,是因为我的const问题。。好低级的错误,可是请问下老师我代码已经写错了为什么控制台并不报错,正常来说应该报TypeError啊。。为什么我number()还不报错。
012020-08-23 
相似问题