uni-app 使用editor组件就会报错

发布于 1周前 作者 eggper 来自 Uni-App

uni-app 使用editor组件就会报错

示例代码:

<editor></editor>

操作步骤:

<editor></editor>

chunk-vendors.js:70854 [Vue warn]: Error in mounted hook: “TypeError: Cannot read properties of undefined (reading ‘id’)”

预期结果:

正常运行

实际结果:

报错chunk-vendors.js:70854 [Vue warn]: Error in mounted hook: “TypeError: Cannot read properties of undefined (reading ‘id’)”

bug描述:

使用editor组件,什么都还没做 就 加入了<editor></editor>,就报错了

chunk-vendors.js:70854 [Vue warn]: Error in mounted hook: “TypeError: Cannot read properties of undefined (reading ‘id’)”


10 回复

看看你整个页面的代码呢


组件 my-editor: <template> <view class="container"> <view class="page-body"> <view class='wrapper'> <view class="editor-wrapper"> <editor id="editor"></editor> </view> </view>

</template>
<script> export default { name: "my-editor",
<style> / [@import](/user/import) "./editor-icon.css"; / [@import](/user/import) '/style/editor-icon.css';

回复 还是LZM: 没用复现你的问题。。上传一个可复现的demo吧,或者你更新一下hbx试试

回复 靐齉齾麤龖龗: 另外还有一个问题 :使用uni.createSelectorQuery的时候也会报错,[system] createSelectorQuery:fail (anonymous) @ chunk-vendors.js:69662 Array.isArray.n.onError.length.n.onError @ chunk-vendors.js:69662 invokeWithErrorHandling @ chunk-vendors.js:72097 push.m44O.Vue.__call_hook @ chunk-vendors.js:78845 o @ chunk-vendors.js:69662 s @ chunk-vendors.js:69662 invokeWithErrorHandling @ chunk-vendors.js:72097 Vue.$emit @ chunk-vendors.js:74166 a @ chunk-vendors.js:69662 v @ chunk-vendors.js:69662 (anonymous) @ chunk-vendors.js:69662 insertAtCursor @ my-cueditor.vue:86 insertTable @ my-cueditor.vue:82 click @ index.js:33869 invokeWithErrorHandling @ chunk-vendors.js:72097 invoker @ chunk-vendors.js:72422 invokeWithErrorHandling @ chunk-vendors.js:72097 invoker @ chunk-vendors.js:72418 original._wrapper @ chunk-vendors.js:77306 chunk-vendors.js:70854 [Vue warn]: Error in v-on handler: “TypeError: Cannot read properties of undefined (reading ‘$vm’)”

针对您提到的在使用 uni-app 的 editor 组件时遇到报错的问题,这里提供一些可能的解决方案和代码示例,帮助您定位并解决问题。请注意,由于具体的错误信息未提供,以下示例将涵盖一些常见的错误情况和处理方式。

1. 检查基础配置

首先,确保您的项目中已正确引入并使用 editor 组件。在 pages.json 中,需要确保目标页面允许使用 editor 组件。

{
  "pages": [
    {
      "path": "pages/index/index",
      "style": {
        "navigationBarTitleText": "首页",
        "usingComponents": {
          "uni-editor": "/components/uni-ui/uni-editor/uni-editor"
        }
      }
    }
  ]
}

2. 组件使用示例

在页面的 .vue 文件中,正确引入并使用 editor 组件:

<template>
  <view>
    <uni-editor id="editor" @input="onEditorInput" />
  </view>
</template>

<script>
export default {
  methods: {
    onEditorInput(e) {
      console.log('Editor content:', e.detail.html);
    }
  }
}
</script>

<style>
/* 样式可根据需要调整 */
</style>

3. 检查平台兼容性

editor 组件在不同平台(如小程序、H5、App等)上的表现可能有所不同。确保您的代码和配置符合目标平台的规范。

4. 捕获并处理错误

如果报错信息依然出现,尝试在组件的 catch 事件中捕获错误,以便进一步分析:

<template>
  <view>
    <uni-editor id="editor" @error="onEditorError" />
  </view>
</template>

<script>
export default {
  methods: {
    onEditorError(e) {
      console.error('Editor error:', e);
      // 可根据错误类型进行相应处理
    }
  }
}
</script>

5. 更新依赖和框架

确保您的 uni-app 框架和所有相关依赖都是最新版本,有时候错误可能是由于版本不兼容导致的。

npm update

总结

以上步骤应能帮助您初步定位和解决在使用 uni-app 的 editor 组件时遇到的报错问题。如果问题依旧存在,建议查看具体的错误日志或联系 uni-app 的官方支持获取更详细的帮助。

回到顶部