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

2023-11-01

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

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

第一步,安装:

cnpm i vant -S
复制代码

第二步,引入组件:

关于怎么引入Vant组件,有全局引入(非常不推荐)和按需引入两种方式

这里演示按需引入的方式,因为官网说的稍微有些复杂,对于一些刚接触的小伙伴,可能会造成一些误解(PS:我在刚开始接触的时候这里就蹲了两个坑,简直欲哭无泪呀~)。直接说怎么用吧:

  • 为了方便我们按需引入组件,这里还需要安装一个插件

cnpm i babel-plugin-import -D
复制代码

  • 安装好该插件好,还需要在.babelrc文件中plugins那里进行一个简单的配置,这里附上完整的plugins部分内容。这里我们在plugins数组中插入了import那个数组,其他内容是原来就有的。

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

  • 完成好配置后,在main.js中按需引入你需要的组件。例如这里引入Vant的button组件:

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

<van-button type="default">默认按钮</van-button> // 在template中使用组件复制代码
  • 这里提一点,如果是类似Toast这种组件,只需要在main.js中引入就好:
import { Toast } from 'vant';

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


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


最后,在说一个关于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()) // 打印出了选中的时间,是个数组
    }
}复制代码

到这,问题圆满解决了!希望对小伙伴们有帮助


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

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

  • 需要帮助优化算法 - 两百万以下所有素数的总和

    我正在尝试做一个欧拉计划 http projecteuler net问题 我正在寻找 2 000 000 以下所有素数的总和 这就是我所拥有的 int main int argc char argv unsigned long int su
  • WPF 数据绑定到复合类模式?

    我是第一次尝试 WPF 并且正在努力解决如何将控件绑定到使用其他对象的组合构建的类 例如 如果我有一个由两个单独的类组成的类 Comp 为了清楚起见 请注意省略的各种元素 class One int first int second cla
  • 如何正确取消引用然后删除 JavaScript 对象?

    我想知道从内存中完全取消引用 JavaScript 对象的正确方法 确保删除时不会在内存中悬空 并且垃圾收集器会删除该对象 当我看这个问题时在 JavaScript 中删除对象 https stackoverflow com questio
  • 在 Unity 中实现 Fur with Shells 技术

    我正在尝试在 Unity 中实现皮毛贝壳技术 http developer download nvidia com SDK 10 5 direct3d Source Fur doc FurShellsAndFins pdf Fins 技术被
  • 为什么这个字符串用AesCryptoServiceProvider第二次解密时不相等?

    我在 C VS2012 NET 4 5 中的文本加密和解密方面遇到问题 具体来说 当我加密并随后解密字符串时 输出与输入不同 然而 奇怪的是 如果我复制加密的输出并将其硬编码为字符串文字 解密就会起作用 以下代码示例说明了该问题 我究竟做错
  • 表单发布请求并存储收到的数据

    我有一个非常简单的表单 在提交时发出发布请求
  • 为什么 C# 2.0 之后没有 ISO 或 ECMA 标准化?

    我已经开始学习 C 并正在寻找标准规范 但发现大于 2 0 的 C 版本并未由 ISO 或 ECMA 标准化 或者是我从 Wikipedia 收集到的 这有什么原因吗 因为编写 审查 验证 发布 处理反馈 修订 重新发布等复杂的规范文档需要
  • 如何使用 JavaScript 或 jQuery 克隆 HTML 元素的样式对象?

    我正在尝试克隆元素的样式对象 这应该允许我在更改后重置所述元素的样式 例如 el style left 50px curr style left 50px Modify the elements style The cloned style
  • Google Maps API (v3) 添加/更新标记

    编辑 它现在可以工作 但如果用户不允许或没有基于位置的服务 则不会加载 请参阅 jsfiddle 示例接受的答案评论 我已经浏览了一些教程和问题 但我无法安静地理解正在发生的事情 或者在这种情况下 没有发生 当用户单击链接时 我正在加载地图
  • C# xml序列化必填字段

    我需要将一些字段标记为需要写入 XML 文件 但没有成功 我有一个包含约 30 个属性的配置类 这就是为什么我不能像这样封装所有属性 public string SomeProp get return someProp set if som
  • 实例化类时重写虚拟方法

    我有一个带有一些虚函数的类 让我们假设这是其中之一 public class AClassWhatever protected virtual string DoAThingToAString string inputString retu
  • Rails 3.1+ 的 Jasmine 与 Mocha JavaScript 测试 [已关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我对茉莉花有经验并且非常喜欢它 有谁有 Jasmine 和 Mocha 的经验 特别是 Rails 的经验吗 我想知道是否值得转用 我已经在 J
  • C 编程:带有数组的函数

    我正在尝试编写一个函数 该函数查找行为 4 列为 4 的二维数组中的最大值 其中二维数组填充有用户输入 我知道我的主要错误是函数中的数组 但我不确定它是什么 如果有人能够找到我出错的地方而不是编写新代码 我将不胜感激 除非我刚去南方 我的尝
  • $resource.query 返回分割字符串(字符数组)而不是字符串

    我正在使用像下面这样的 Angular resource angular module app factory data function resource var Con resource api data update method P
  • 如何实例化 ODataQueryOptions

    我有一个工作 简化 ODataController用下面的方法 public class MyTypeController ODataController HttpGet EnableQuery ODataRoute myTypes pub
  • 使用 next.js 进行服务器端渲染与传统 SSR

    我非常习惯 SSR 意味着页面得到完全刷新并从服务器接收完整 HTML 的方法 其中根据后端堆栈使用 razor pub other 进行渲染 因此 每次用户单击导航链接时 它只会向服务器发送请求 整个页面将刷新 接收新的 HTML 这就是
  • 有没有办法让 doxygen 自动处理未记录的 C 代码?

    通常它会忽略未记录的 C 文件 但我想测试 Callgraph 功能 例如 您知道在不更改 C 文件的情况下解决此问题的方法吗 设置变量EXTRACT ALL YES在你的 Doxyfile 中
  • 在 WPF 中使用 ReactiveUI 提供长时间运行命令反馈的正确方法

    我有一个 C WPF NET 4 5 应用程序 用户将用它来打开某些文件 然后 应用程序将经历很多动作 读取文件 通过许多插件和解析器传递它 这些文件可能相当大 gt 100MB 因此这可能需要一段时间 我想让用户了解 UI 中发生的情况
  • 指针和内存范围

    我已经用 C 语言编程有一段时间了 但对 C 语言还是很陌生 有时我对 C 处理内存的方式感到困惑 考虑以下有效的 C 代码片段 const char string void where is this pointer variable l
  • 使用 WGL 创建现代 OpenGL 上下文?

    我正在尝试使用 Windows 函数创建 OpenGL 上下文 现代版本 基本上代码就是 创建窗口类 注册班级 创建一个窗口 choose PIXELFORMATDESCRIPTOR并设置它 创建旧版 OpenGL 上下文 使上下文成为当前

随机推荐

  • 调试最长的一帧(第17天)

    先看看流程 电子书上介绍了渲染器osgViewer Renderer类 osgViewer Renderer为摄像机渲染场景的工作提供了一个公共接口 当我们向视景器viewer添加了一个新的摄像机camera时 一个与摄像机相关联的渲染器R
  • 不止是Android,Github超高影响力开源大放送,学习开发必备教科书

    http www cnblogs com liushilin p 6378607 html 1 free programming books https github com vhf free programming books 这个项目目
  • centos7下安装flex,bison

    centos7下安装flex bison 1 修改镜像源为国内镜像源 比如阿里云 1 首先备份系统自带yum源配置文件 etc yum repos d CentOS Base repo root fengyi flex cp etc yum
  • 终于解决DELL台式机的风扇噪音变大的问题

    我的这台电脑是今年7月中旬买的 是DELL 的5150 刚到家的时候 几乎没有什么噪音 很安静 我当时还在感叹DELL的降噪音技术做得如此之好 但到九月份的时候 发现噪音有些变大 尤其在运行需大量运算的程序时 我当时也没多想 但发现就算上新
  • Json Path提取器

    一 Json Path提取器截图 二 Json Path提取器使用说明 http响应的Json结果如下图 数据来源 可以是Http请求的响应结果或者JMeter变量值 目标变量名和Json Path表达式 将Json Path提取出的结果存
  • 共享里的文件被删除了怎么办?可尝试这三种恢复方法

    共享里的文件被删除了怎么恢复 删除之后就马上去回收站找 可是没回收站里没有怎么办 来自某xx小伙伴的咨询 如果你也出现同样的疑惑 那么可以尝试下面的三种方法恢复共享里的文件 方法一 以前的版本恢复 从Windows XP SP2和Windo
  • python安装到一半停止_关于python:使用requirements.txt进行安装时,停止单个包上的pip失败...

    我正在安装requirements txt中的包 pip install r requirements txt requirements txt文件显示 Pillow lxml cssselect jieba beautifulsoup n
  • 外设驱动库开发笔记3:AD527x系列数字电位器驱动

    在一些时候我们需要使用精度更高的数字电位器来实现我们的应用 我们经常使用AD527x系列数字电位器来实现这类应用 在通常情况下 AD527x系列数字电位器完全能够满足要求 为了减少重复工作 在这里我们将分系并实现AD527x系列数字电位器的
  • 12月31日写成13月1日引发重大 Bug,程序员新年就要被“祭天”?

    元旦放假 宅家大扫除成了头等大事 这不 小白鲸扫地机器人竟然选择了 罢工 不少用户反馈小白鲸拖地机器人指示灯一直异常无法工作 到底是什么鬼呢 官方排查发现 是的 你没看错 Bug 原因是程序员小哥哥把 12 月 31 日写成了 13 月 1
  • C4.5算法详解(非常仔细)

    首先 C4 5是决策树算法的一种 决策树算法作为一种分类算法 目标就是将具有p维特征的n个样本分到c个类别中去 相当于做一个投影 c f n 将样本经过一种变换赋予一种类别标签 决策树为了达到这一目的 可以把分类的过程表示成一棵树 每次通过
  • VUE报错 plugin-vue requires vue (>=3.2.13) or @vue/compiler-sfc to be present in the dependency tree

    VUE运行报错 vitejs plugin vue requires vue gt 3 2 13 or vue compiler sfc to be present in the dependency tree 运行 npm install
  • [系统安全] 四十九.恶意软件分析 (5)Cape沙箱分析结果Report报告的API序列批量提取详解

    终于忙完初稿 开心地写一篇博客 您可能之前看到过我写的类似文章 为什么还要重复撰写呢 只是想更好地帮助初学者了解病毒逆向分析和系统安全 更加成体系且不破坏之前的系列 因此 我重新开设了这个专栏 准备系统整理和深入学习系统安全 逆向分析和恶意
  • android设置布局高度的属性,Android内部分享[9]——约束布局 ConstraintLayout 的使用...

    ConstraintLayout 允许您创建具有平面视图层次结构 没有嵌套视图组 的大型复杂布局 它类似于 RelativeLayout 因为所有视图都是根据兄弟视图和父视图布局之间的关系来布局的 但是它比 RelativeLayout 更
  • 移动机器人定位(amcl)

    1 定位 amcl 1 1找到amcl自带功能包 amcl diff launch
  • 使用Python调用百度地图的API在地图上添加标记

    写在前面 近期博主工作太忙 快一个月没更新博客 今天跑了大半天的腿 被一堆破事儿弄的无比憋屈 写篇博客调节一下心情 博主的目的是在地图上做一些标记 然后保存为html网页文件 这样方便我的软件调用 前期我使用的folium包 这个包很强大
  • Kylin ext3/4 xfs手动扩容根分区

    1 环境 云平台 兼容OpenStack Queens的发行版 HOST OS Kylin Server 10 SP1 Release Build20 20210518 arm64 虚拟机镜像ISO Kylin Server V10 GFB
  • Flask-模板

    视图函数的作用是生成请求的响应 但是直接在视图函数里处理业务逻辑和表现逻辑 会显的代码混乱 可以把表现逻辑移到模板中 模板是包含响应文本的文件 其中包含用占位变量表示的动态部分 其具体值只在请求的上下文中才能知道 使用真实值替换变量 再返回
  • IT行业相关技术介绍

    IT行业常见技术体系 一 前端开发 前端开发是创建WEB页面 网页 或APP等前端界面呈现给用户的过程 通过HTML CSS JavaScript以及衍生出来各种技术 框架 来实现互联网产品的用户界面交互 1 核心技术 1 HTML 网页的
  • Gitlab详细使用说明

    1 下载安装 下载gitlab和安装就不用详细说了 下载可以到官网下载 官网下载速度慢的 可以到我网盘下载 网盘地址链接 https pan baidu com s 1LZ6wq0PZNyB5SzGAzd74ew 提取码 uccq 2 使用
  • Vant库的使用,及日期组件的一些注意点

    Vant库对于开发商城类项目 真的是非常nice 会让你情不自禁爱上它 Vant库支持按需加载 为移动端商城设计的风格 非常完美 但是 本人在实际开发中 也遇到了一些小问题 折腾了老半天 最终得以解决 下面先说说在vue中使用Vant库的流