let that = this let v = e.detail.value that.editorCtx.getContents({ success(res) { const htmlStrres = res.html; } }); htmlStrres = htmlStrres; const textStr = htmlStr.replace(/<\/?[^>]*>/g, ''); console.log(textStr); 这段代码存在哪些问题?
时间: 2024-02-06 20:04:46 浏览: 92
有问题的源代码
这段代码存在几个问题:
1. 在 `success` 回调函数中定义的 `htmlStrres` 变量是局部变量,无法在回调函数外部被访问。
2. 在赋值 `htmlStrres = htmlStrres` 时,不起作用,因为左侧的 `htmlStrres` 是常量,无法重新赋值。
3. 在使用 `replace` 函数时,应该使用 `htmlStr` 而不是 `htmlStrres`。
4. 没有处理可能出现的异常情况,例如 `that.editorCtx` 或者 `success` 回调函数调用失败。
以下是修改后的代码:
```
let that = this;
that.editorCtx.getContents({
success(res) {
const htmlStr = res.html;
const textStr = htmlStr.replace(/<\/?[^>]*>/g, '');
console.log(textStr);
},
fail(err) {
console.error(err);
}
});
```
阅读全文