uni-app easycom custom配置里面没有做开头字符的判断

uni-app easycom custom配置里面没有做开头字符的判断

操作步骤:

  • 不用复现尝试就知道

预期结果:

  • 规则严格处理

实际结果:

  • 规则严格处理

bug描述:

如果既有gb-开头的规则又有task-开头的规则 当我有gb-task-开头的组件时,gb-开头的文件,竟然自动匹配到task-开头的文件去了。。。。

image

信息类别 详情
产品分类 uniapp/App
PC开发环境操作系统 Windows
PC开发环境操作系统版本号 windows10
HBuilderX类型 正式
HBuilderX版本号 2.7.14
手机系统 Android
手机系统版本号 Android 10
手机厂商 华为
手机机型 小米10
页面类型 vue
打包方式 云端
项目创建方式 HBuilderX

更多关于uni-app easycom custom配置里面没有做开头字符的判断的实战教程也可以访问 https://www.itying.com/category-93-b0.html

8 回复

组件是安装在项目的components目录下的吗?

更多关于uni-app easycom custom配置里面没有做开头字符的判断的实战教程也可以访问 https://www.itying.com/category-93-b0.html


是呀,看我截图的easycom里面的路径配置就可以看出来的

没问题,如需匹配起始位置写上^,比如:^xxx-(.*) 如需学习更多正则表达式相关知识,可以参考:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide/Regular_Expressions

ok,多谢

要是自定义组件名字没有规律如何匹配呢?

如何实现一条规则可以配置多个目录?custom配置覆盖掉了系统的默认配置。

你好,请问找到配置方式了吗?我也遇到这个问题了,没搜索到解决方式

在uni-app的easycom配置中,确实存在组件前缀匹配不够严格的问题。当同时配置了多个前缀规则时,如"gb-“和"task-”,系统会按照配置顺序进行匹配,但不会严格区分前缀边界。

建议的解决方案是:

  1. 修改easycom配置,为每个前缀添加更明确的匹配规则
  2. 或者调整组件命名,避免出现前缀重叠的情况

例如:

"easycom": {
  "autoscan": true,
  "custom": {
    "^gb-(.*)": "@/components/gb/$1.vue",
    "^task-(.*)": "@/components/task/$1.vue"
  }
}
回到顶部