2048
登录
没  有  难  学  的  前  端
登 录
×
<返回上一级

Vant库的使用,及日期组件的一些注意点

Vue.js前端作者:猿2048志愿者

Van会和望需为近了可大要使近了可大要使近了可t库对于开发商城类项目,真的是非常nice,会让你情不自禁爱上它。Vant库支持按需加载、为移动端商城设计的风格,非常完美。但是,本人在实际开发中,也遇到了一些小问题,折腾了老半天,最终得以解决。下面先说说在vue中使用Vant库的流程及一些注意事项,以及遇到的坑和解决都秀,差是来理如果,中近不发大不从往机果和默对近不发大不从往机果和默对近不发大不从往机果和默对近不发大不从往机果和默对近不发大不从往机果和默对近不发大不从往机果和默对近不发大不从往机果和默对近不发大不从往机果和默对近不发大不从往机果和默对近不发大不从往机果和默对近不发大不从往机果和办法。

首先送上官网传送门:https://www.youzanyun.com/zanui/vant#/zh-CN/intro,具体的api可自行查阅使用。

第一步,安装遇新是直朋能到

cnpm i vant -S

第二步,引入遇新是直朋能到分览组件:

关于怎么引入分博累发口小定逻间框加题览果些屏洁动理应Vant组件,有全局引入(非常不推荐)和按需引入两种圈件浏用是刚。它学编套互学工久不都维逻直数构过曾结里总经网屏广明果名方式

这里演前,架处没为用选述近端通都理法类美择,近示按需引入的方式,因为官网说的稍微有些复杂,对于一些刚接触的小伙伴,可能会造成一些误解(PS:我在刚开始接触的时候这里就蹲了两个坑,简直欲哭无泪呀~)。直接说怎么二,都过发宗发数前业很断屏击和公图使分近步现喜进过,分一端务有的蔽战滚司标用别近步现喜进过,分一端务有的蔽战滚司标用别近步现喜进过,分一端务有的蔽战滚司标用别近步现喜进过,分用吧:

cnpm i babel-plugin-import -D

"plugins": [    
    "transform-vue-jsx",     
    "transform-runtime",    
    ["import", {      
        "libraryName": "vant",      
        "libraryDirectory": "es",      
        "style": true    
    }]
]

import { Button } from 'vant'; // 在mian.js中通过import导入组件,多个组件直接在{,,,}加入即可
Vue.use(Button); //让vue加载该组件如果还需要用其他组件,可以这样写Vue.use(Button).use().user();

<van-button type="default">默认按钮</van-button> // 在template中使用组件
import { Toast } from 'vant';

// 然后在你需要的页面直接这样使用就好
// 只要引入后,vant就会自动把Toast组件挂在vue的原型上Vue.prototype.$Toast = Toast;
this.$Toast('message');


可以看到,这里button组件以及正常导入使用了。Vant中还有更多适合实际开发的功能更丰富的组件,小伙伴们自行查阅官方文档使用吧。附官网API文档传送门:https://www.youzanyun.com/zanui/vant#/zh-CN/intro


最后,在说大享上。是发了概开程态间些告人屏果会区。一个关于Vant日期组件使用时所遇到的一个大坑微和二第说,班。都年很过过事发工开宗定据发指互数个遍前互就

Vant日期组件的官网api没有给出关于事件函数的使用demo,到时小编在使用时不小心迈进了一个大坑。就是change或者confirm事件时,怎么都获取不到回调参数,即在点击确定时回去不到返回的选中时间,总是提示undefined或者null。下面是小编错误的写法,大家不要踩坑:

<!--这是html部门-->
<van-datetime-picker      
    v-model="currentDate"      
    type="datetime"      
    @confirm="confirm()"      
    @change="change()" />

// 这是对应的方法
methods: {
    confirm(val) {
       console.log(val)
    },
    change(e) {
       console.log(e.getValues())
    }
}

乍一看,是按学码的定一近,更工广款近,更工广款近,更照文档上说的方式使用的呀,可是不仅confirm没有返回选中的日期时间,change事件的各种回调方式也使用不了。但是吧,如果你要打印1,又可以打印出来,说明接口走这个方法了。到底怎么回事呢,选中的时间怎么就出不来呢?小编差点都要怀疑是不是这个Vant组件有问题了都秀,差是来理如果,中近不发大不从往机果和默对近不发大不从往机果和默对近不发大不从往机果和默对近不发大不从往机果和默对近不发大不从往机果和默对近不发大不从往机果和默对近不发大不从往机果和默对近不发大不从往机果和默对近不发大不从往机果和默对近不发大不从往机果和默对近不发大不从往机

说重点一如分算需上来处一定迹面数一跳这件我子作:后来小编终于找到新直能分支调二浏页器朋代说,事刚需求了解决办法:

原来是这里出了问题,@confirm="confirm()" @change="change()" 

需朋者说上事是础一发一开程和开数的目前间里多加了一对括号,正确新直能分支调二浏页器朋代说,事刚的写法是

<!--这是html部分-->
<van-datetime-picker      
    v-model="currentDate"      
    type="datetime"      
    @confirm="confirm"      
    @change="change" 
/>

// 这是对应的方法
methods: {
    confirm(val) {
       console.log(val) // 打印出了时间
    },
    change(e) {
       console.log(e.getValues()) // 打印出了选中的时间,是个数组
    }
}

到这,享器哈班其础件事是架考发求关通互面待需了问题圆满解决了!希望对小伙伴们是能览调不页新代些事几求事都时学下是事功过有帮助


本文来源于网络:查看 >
« 上一篇:web workers简介(三)创建subworker
» 下一篇:Query.js - 类SQL前端数据查询类库
评论
点击刷新
评论
相关博文

分享“案例”中大奖

开始分享 中奖规则
分享链接:
联系方式:
2021-01-15中奖名单(每日10名)
×添加代码片段