Tencent / tmagic-editor

Other
4.22k stars 714 forks source link

在package/ui中使用vant的field组件,点击里面的输入框会报错 #542

Closed nick938 closed 1 year ago

nick938 commented 1 year ago

Describe the bug 我在自定义组件,然后在项目根目录下安装了vant,在package/ui中编写了自定义的input组件。代码如下 `` 然后项目运行起来后点击里面的输入框会报错 image

To Reproduce

  1. 项目根目录下 pnpm i vant -w 安装vant
  2. 在package/ui下编写input组件
  3. 运行pnpm pg
  4. 点击Field组件里的输入框,浏览器报错 Expected behavior Field组件里的输入框不应该是可以拖动的或选中的。可以拖动的应该是外面的大框 image

Desktop (please complete the following information):

nick938 commented 1 year ago

我解决啦啊,官方文档Api中有个canselect函数。默认是 canSelect: (el: HTMLElement) => Boolean(el.id),

重写can-select函数为const canSelect = (el: HTMLElement): Boolean => el.classList.contains("magic-ui-component") || el.classList.contains("magic-ui-container");就可以了,这样就不会元素有id就可以选中高亮了。