Error in render: “TypeError: Cannot read properties of undefined (reading ‘replace‘)“

1.我这翻译的是呈现中出错:“TypeError:无法读取未定义的属性(读取'replace')”
代码是这样的 组件公共的方法

export function removeHTMLTag(htmlStr) {  
  let html = htmlStr  
    .replace(/<img.*?>/g, "[图片]")  
    .replaceAll(/<[^>]+>/g, "")  
    .replace(/&nbsp;/gi, "");  
    return html;  
     
}

就报这个错根据这个replace找相关的资料?.replace 与.replace两者区别在这里插入图片描述

.replace:这是字符串的replace方法,用于在字符串中替换匹配的子字符串。如果调用该方法的对象是null或undefined,则会抛出错误。
但还有一个?.replace:这是可选链(Optional Chaining)操作符与replace方法的结合。可选链操作符允许在尝试访问深层嵌套的对象属性时不必明确验证每一层是否存在。当使用?.replace时,如果前面的对象是null或undefined,则整个表达式将返回undefined,而不会抛出错误。这可以避免在处理可能为空或不存在的对象时发生错误。

最后替换成.replace:就好了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值