在开发微信小程序时,需要引入一些第三方UI库,这时就需要用到微信小程序的 UI,分享一些遇到的问题

Vant Weapp框架引入组件失败问题:

使用Vant 组件 [“usingcomponents”][“van-button”]: “@vant/weapp/button/index” 未找到:

当出现:

vm192:2 miniproject/app.json: ["usingcomponents"]["van-button"]: "@vant/weapp/button/index" 未找到

解决方案:

  1. 确保已经在miniproject文件里初始化package.json,这样才可以进行后面的操作
npm init -y

2.在miniproject文件里下载npm资源包

npm i @vant/weapp -S --production
  1. 然后在 微信开发者工具 里面进行相关配置
  • 进入 => 详情 => 本地设置 => 详情 => (勾选)使用npm模块

在这里插入图片描述

  • 在顶部的菜单栏中
    点击 => 工具 => 构建 npm
    在这里插入图片描述

  • 构建完成提示
    在这里插入图片描述

需要配置

  1. 完成后就可以开始调入第三方UI库,接下来有一些使用过程中的细节需要配置(重要)
  • 步骤一: 在 app.json 中
    app.json 中的 "style": "v2" 去除,小程序的新版基础组件强行加上了许多样式,难以覆盖,不关闭将造成部分组件样式混乱。
  • 步骤二: 在 project.config.json 中
    开发者工具创建的项目,miniprogramRoot 默认为 miniprogram,package.json 在其外部,npm 构建无法正常工作。

需要手动在 project.config.json 内添加如下配置,使开发者工具可以正确索引到 npm 依赖的位置。

{
  ...
  "setting": {
    ...
    "packNpmManually": true,
    "packNpmRelationList": [
      {
        "packageJsonPath": "./package.json",
        "miniprogramNpmDistDir": "./miniprogram/"
      }
    ]
  }
}

注意: 由于目前新版开发者工具创建的小程序目录文件结构问题,npm构建的文件目录为miniprogram_npm,并且开发工具会默认在当前目录下创建miniprogram_npm的文件名,所以新版本的miniprogramNpmDistDir配置为'./'即可

效果展示

  1. 接下来加入组件,试试看效果吧
  • 首先在 app.json 或 index.json 中 引入组件
"usingComponents": {
  "van-button": "@vant/weapp/button/index"
}
  • 在index.wxml中调用组件
<van-button type="default">默认按钮</van-button>
  1. 大功告成啦🎈 冲啊🌈
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐