<script module="renderScript" lang="renderjs">
export default {
methods: {
// 接收逻辑层发送的数据
receiveMsg(newValue, oldValue, ownerVm, vm) {
const view = document.getElementById('renderjs-view')
const button = document.createElement('div')
button.innerHTML = newValue
view.appendChild(button)
},
emitData(e, ownerVm) {}
}
}
</script>

- 发布:2022-05-27 15:19
- 更新:2022-05-31 14:24
- 阅读:517
【报Bug】Cannot read property 'appendChild' of null 在 module="renderScript" lang="renderjs" 中
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: w10
HBuilderX类型: 正式
HBuilderX版本号: 3.4.7
手机系统: Android
手机系统版本号: Android 8.0
手机厂商: 华为
手机机型: huawei p9
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
示例代码:
操作步骤:
view.appendChild(button)
view.appendChild(button)
预期结果:
无报错
无报错
实际结果:
报错
报错
bug描述:
TypeError: Cannot read property 'appendChild' of null at view.umd.min.js:1

FullStack - 【插件开发】【专治疑难杂症】【ios上架、马甲包、白包、过审、已成功上架过几百个】【多款插件已上架:https://ext.dcloud.net.cn/publisher?id=22130】【非诚勿扰】QQ:543610866
提供完整demo,方便排查

时机问题
解决方案:
增加判断
export default { methods: { // 接收逻辑层发送的数据 receiveMsg(newValue, oldValue, ownerVm, vm) { const view = document.getElementById('renderjs-view'); if(!view){return}; const button = document.createElement('div') button.innerHTML = newValue view.appendChild(button) }, emitData(e, ownerVm) {} } }
阿狸的祈祷 (作者)
亲爱的,代码已经实例上传,这个问题对于我的app很严重,这个问题导致ios一按返回就黑屏,安卓则只是报错
2022-05-30 09:07
FullStack
回复 阿狸的祈祷: 放在 mounted 里添加buttom
2022-05-30 09:22
FullStack
回复 FullStack: 或者加延迟
2022-05-30 09:24