taro icon indicating copy to clipboard operation
taro copied to clipboard

custom-wrapper 找不到

Open 123417316 opened this issue 1 year ago • 26 comments

相关平台

微信小程序

小程序基础库: 2.25.2 使用框架: Vue 3

复现步骤

Component is not found in path "custom-wrapper" (using by "pages/home/index"), Component is not found in path "comp" (using by "pages/home/index") 更新之后,所有页面都会报这个错

期望结果

不报错

实际结果

所有页面都会报这个错

环境信息

 Taro CLI 3.5.1 environment info:
    System:
      OS: Windows 10
    Binaries:
      Node: 16.13.1 - C:\Program Files\nodejs\node.EXE
      Yarn: 1.22.18 - C:\Users\CHu\AppData\Roaming\npm\yarn.CMD
      npm: 8.1.2 - C:\Program Files\nodejs\npm.CMD

123417316 avatar Aug 08 '22 03:08 123417316

@123417316 麻烦提供一下 demo

Chen-jj avatar Aug 09 '22 09:08 Chen-jj

同问,我新建的项目,用的nutUI模板,还没开始用呢,先报俩错 image

comlejade avatar Aug 10 '22 06:08 comlejade

3.5.2 同样的问题

Pentium286 avatar Aug 11 '22 08:08 Pentium286

3.4.14 俺也一样

cloook avatar Aug 11 '22 10:08 cloook

求解,3.5.2 新初始化的项目,报这个错误

brickspert avatar Aug 14 '22 08:08 brickspert

在 index.config.ts 里面临时加了以下代码解决

  usingComponents: {
    'custom-wrapper': '/custom-wrapper',
  }

brickspert avatar Aug 14 '22 08:08 brickspert

我是react+hook也是新建的项目报错

Virgil-N avatar Aug 22 '22 05:08 Virgil-N

似乎是一个偶现的问题,需要区分是小程序本身的问题还是 Taro 的问题,请问一下各位:

  1. Webpack 版本
  2. 是否只有开发者工具会报错?
  3. 报错会否影响程序正常运行?
  4. 发生报错时,dist 目录下是否存在 custom-wrappercomp 组件对应的 js、json、wxml 文件?
  5. 发生报错的页面对应的 json 文件的 usingComponents 字段,是否正确配置了 custom-wrappercomp 组件?
  6. 重启开发者工具后报错会不会消失?
  7. 如果重启开发者工具后报错依旧,重新启动 Taro 编译后报错会不会消失?

此外,@brickspert 可以讲述一下是 Taro 编译时漏了什么东西,然后如何解决的吗?

在 index.config.ts 里面临时加了以下代码解决

  usingComponents: {
    'custom-wrapper': '/custom-wrapper',
  }

Chen-jj avatar Aug 22 '22 07:08 Chen-jj

刚才也遇到了,突然出现的问题,依赖版本没动过,应该不是Taro或者React的问题,然后我更新了一下开发者工具就好了。

zhenzhenChange avatar Aug 24 '22 03:08 zhenzhenChange

@Chen-jj

1、只有开发者工具报警告; 2、报错地方的组件无法正常显示; 3、dist目录存在对应生成文件; 4、usingComponents正确配置了wrapper comp; 56、重启开发者工具、taro重编译、node_modules重装 后小概率解决(大概 1:10 )

引用第三方组件报错: https://github.com/AntmJS/vantui/issues/332#issue-1347470072

以下临时方案可以解决 在 index.config.ts 里面临时加了以下代码解决

  usingComponents: {
    'custom-wrapper': '/custom-wrapper',
  }

Originally posted by @brickspert in https://github.com/NervJS/taro/issues/12239#issuecomment-1214312079

Deain avatar Aug 24 '22 09:08 Deain

@Deain Webpack5 么?

重启开发者工具、taro重编译、node_modules重装 后小概率解决(大概 1:10 )

这是同时做的还是控制了变量?

Chen-jj avatar Aug 24 '22 09:08 Chen-jj

@Deain Webpack5 么?

重启开发者工具、taro重编译、node_modules重装 后小概率解决(大概 1:10 )

这是同时做的还是控制了变量?

控制变量,因为一开始是好的,中间写着写着,某一次编译完后就报错了,就一个一个尝试的。 当然后面也同时一起处理过,还是没效果。 期间也尝试过升降级taro版本

webpack5、taro3.5.4/3.5.3

Deain avatar Aug 24 '22 10:08 Deain

@Deain Webpack5 么?

重启开发者工具、taro重编译、node_modules重装 后小概率解决(大概 1:10 )

这是同时做的还是控制了变量?

控制变量,因为一开始是好的,中间写着写着,某一次编译完后就报错了,就一个一个尝试的。 当然后面也同时一起处理过,还是没效果。 期间也尝试过升降级taro版本

webpack5、taro3.5.4/3.5.3

@Deain 找到 node_modules/@tarojs/service/dist/platform-plugin-base.js,把这一行注释试试:

image

怀疑是 Webpack5 的文件产物输出时机和小程序开发者工具 watch 机制的冲突,所以试试每次编译时不清空 dist 目录再看看。

Chen-jj avatar Aug 25 '22 09:08 Chen-jj

@Deain Webpack5 么?

重启开发者工具、taro重编译、node_modules重装 后小概率解决(大概 1:10 )

这是同时做的还是控制了变量?

控制变量,因为一开始是好的,中间写着写着,某一次编译完后就报错了,就一个一个尝试的。 当然后面也同时一起处理过,还是没效果。 期间也尝试过升降级taro版本 webpack5、taro3.5.4/3.5.3

@Deain 找到 node_modules/@tarojs/service/dist/platform-plugin-base.js,把这一行注释试试:

image

怀疑是 Webpack5 的文件产物输出时机和小程序开发者工具 watch 机制的冲突,所以试试每次编译时不清空 dist 目录再看看。

尝试了几次,需要配合reinstall依赖的三方包,只有当第一次编译出来可以正常运行时,后面才没问题。 如果第一次编译出来还是那样的问题,就没办法

Deain avatar Aug 26 '22 02:08 Deain

@Chen-jj 但是我发现,在config.ts中写的楼上的可用代码,哪怕路径乱写,都能够解决这个问题

usingComponents: {
   'custom-wrapper': '.././../../custom-wrapper',
}

Deain avatar Aug 26 '22 03:08 Deain

@Deain 哪个 config.ts ? 另外能发一下出错时的包吗

Chen-jj avatar Aug 26 '22 07:08 Chen-jj

我也遇到了.
Taro: 3.5.4 webpack5 直接用cli选择的taro_hooks的template. 我发现有以下复现条件:

  1. 微信开发者工具上打开热重载
  2. npm run dev:weapp的时候, 也就是加上--watch

不管本身项目有没有配置hot:true, 都会有可能报错. 然后报错或者没报错, 热重载在ts文件上面都是不生效的.

image

wjxforu avatar Aug 26 '22 11:08 wjxforu

我也遇到了这个问题,ts文件修改第一次热重载能生效,第二次就不行;修改样式文件热重载功能没有问题

githubCK avatar Aug 28 '22 08:08 githubCK

我也遇到了. Taro: 3.5.4 webpack5 直接用cli选择的taro_hooks的template. 我发现有以下复现条件:

  1. 微信开发者工具上打开热重载
  2. npm run dev:weapp的时候, 也就是加上--watch

不管本身项目有没有配置hot:true, 都会有可能报错. 然后报错或者没报错, 热重载在ts文件上面都是不生效的.

image

经过测试, 使用default模板也会出现该问题. 所以和taro hooks模板无关

wjxforu avatar Aug 29 '22 01:08 wjxforu

@Deain 哪个 config.ts ? 另外能发一下出错时的包吗

app.config.ts , 跟包关系应该不大,因为在 app.config.ts 里面加了 usingComponents:{custom-wrapper} 就可以运行了

Deain avatar Aug 29 '22 02:08 Deain

我也遇到了. Taro: 3.5.4 webpack5 直接用cli选择的taro_hooks的template. 我发现有以下复现条件:

  1. 微信开发者工具上打开热重载
  2. npm run dev:weapp的时候, 也就是加上--watch

不管本身项目有没有配置hot:true, 都会有可能报错. 然后报错或者没报错, 热重载在ts文件上面都是不生效的.

image

@wjxforu 目前 Webpack5 不能开启开发者工具的热重载功能

Chen-jj avatar Sep 19 '22 03:09 Chen-jj

我在使用taro开发微信小程序插件时,遇到了同样的问题,具体不知道是啥原因,尝试自己手动引入一下custom-wrapper组件解决了问题。custom-wrapper组件按照如下声明: import { CustomWrapper, } from '@tarojs/components'; export default CustomWrapper;

wenlittleoil avatar Jun 21 '23 05:06 wenlittleoil

image 我这边验证到是因为开了持久化缓存引起的,开启缓存后,第二次编译时产物中没有custom-wrapper相关的代码。解决方式: 1、关闭缓存 2、如上,页面index.config.ts中增加 usingComponents: { 'custom-wrapper': '/custom-wrapper', }

tutuxxx avatar Jun 27 '23 09:06 tutuxxx

我试着终止终端运行,重新执行npm run dev,小程序重新编译一次,发现就没这个问题。

2792543106 avatar Jul 10 '23 03:07 2792543106

3.6.22也有 dev模式没有 但是build后 运行就会出现这个 小程序基础库2.33.0 但页面正常渲染 这个comp组件有什么用吗 去掉也没有影响?

qiuziz avatar Feb 27 '24 07:02 qiuziz

taro4.0.0-beta 版本使用 vue3-pinia(Vue3 + Pinia 模板(https://pinia.esm.dev/))同样会报Component is not found in path "comp" (using by "pages/index/index")的错误

Dumbliidore avatar Apr 15 '24 08:04 Dumbliidore