小程序使用vant组件库

一:下载组件库

在小程序内npm下载的包

vant组件库官网:快速上手 - Vant Weapp (youzan.github.io)

1)首先有有package.json文件,没有的话则先初始化

即使通过package.json去下载包,也需要有,可以观察下载的包.

2)下载包

3)构建npm包

下载包之后存储在node_modules内,但是我们获取包是在另一个包内,因此需要构建

每一次增加包,都需要先删除上一次构建的包,然后再点击构建npm,可以不报错.

4)删除style:"v2',会开启样式隔离.

二:按需导入

在app.json上/index.json上会写以下的会安装组件.和对应的wxss.

三:使用变量定义样式

使用变量可以在小程序也可在页面.

在css内是

在选择器下定义变量,如果是变量来设置样式的,最好以--开头,便于区分.

然后需要的var(变量)会访问父组件,当前组件内的css内的这个变量的值

在vant,wxss内也是一样.

vant组件库的type="danger"内部会添加样式,样式是var(--...)上面的,我们在页面的wxss内使用,则页面使用vant,会寻找这个.但是其他页面使用的话,还是用默认的.因此在app.wxss内使用,全局的wxss会被访问的,比较权重.app.wxss会整理在一起.每个页面都能访问.

四:小程序的异步回调

如上述,success都是异步完成之后回调函数,异步回调容易逻辑乱,形成回调地狱

1.下载包

2.配置

导入包,包给wx,wxp会给导入返回promise对象,会将wx的属性都导入到wx.p内.且没有回调,返回一个promise对象.在app.js上使用,所有页面内wx.p都有.在页面js上,其他页面没有这些.

3.使用

返回的promise对象,和ajax一样使用.

五:数据共享

和behaviors不一样,behaviors是和minix差不多,是导入,但是组件之间互相不能共享.

这里数据共享类似vuex,vuex的store对象,创建的对象,会被所有的组件使用,然后能修改共享

1.安装包

并且构建

2.创建store对象

在store文件夹下的store.js文件内,导入包,使用包,创建store对象.

这样得到store对象,对象的前面写get,会使得sum变量时刻获取值,也可以设置set.

使用action(方法)将方法赋值给方法.且会记录时间等.直接修改的话,无法记录时间这种.

小程序为了简便,只使用actions来实现同步和异步,同步也在actions方法内,异步也可以写在actions内.

### 微信小程序 Vant 组件库构建 NPM 失败解决方案 在微信小程序开发过程中,当尝试使用 Vant 组件库时遇到无法构建 NPM 包的情况,通常是因为项目配置文件未正确设置或缺少必要的依赖项。以下是针对该问题的具体分析与解决方法。 #### 1. 确认 `miniprogramRoot` 目录内的 NPM 包 确保所有的 npm 包都位于项目的 `miniprogramRoot` 目录下。如果某些包不在指定目录内,则可能导致构建失败。可以通过调整 `project.config.json` 文件中的 `packNpmManually` 和 `packNpmRelationList` 参数来手动管理需要打包的 NPM 资源[^1]。 ```json { "packNpmManually": true, "packNpmRelationList": [ { "packageJsonPath": "node_modules/@vant/weapp/package.json", "alias": {} } ] } ``` 上述代码片段展示了如何通过 `packNpmRelationList` 显式声明需要参与构建的 NPM 包路径及其别名映射关系。 #### 2. 检查并更新 `usingComponents` 对于每个页面或组件,在其对应的 JSON 配置文件中需正确定义所使用Vant 组件路径。例如: ```json { "usingComponents": { "van-button": "@vant/weapp/button/index" } } ``` 此步骤确保了各页面能够正确加载所需的 Vant 组件资源[^3]。 #### 3. 移除不必要的样式版本控制字段 如果发现部分组件样式未能正常显示,可能由于小程序基础库强制应用了一些默认样式而导致冲突。此时应移除 `app.json` 中关于 `"style"` 字段的相关定义(即删除 `"style": "v2"`),从而避免新版基础组件带来的额外影响[^2]。 #### 示例代码:完整的按钮组件引入方式 以下是一个完整示例,展示如何在一个页面中成功集成 Vant 的 Button 组件: ```javascript // index.js Page({ data: {}, }); ``` ```html <!-- index.wxml --> <view> <van-button type="primary">主要按钮</van-button> </view> ``` ```json /* index.json */ { "usingComponents": { "van-button": "@vant/weapp/button/index" } } ``` 以上内容涵盖了从基本配置到实际操作层面解决问题的方法论。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值