如何在Vue中使用CleaveJS格式化你的输入内容


Posted in Javascript onDecember 14, 2018

What's CleaveJS?

CleaveJS 是最近github上的一个热门项目,在短短的一个多月中star数达到了2500+,且保持着强劲的上升势头。它的主要目的是

Format input text content when you are typing 格式化你的输入内容

可以查看官方的在线DEMO进行体验。

Vue-Cleave

官方的CleaveJS只提供了 原生JS ReactJS 版本的,看样子也准备出 AngularJS 版的了。但是当我把 VueJS 版本的pullrequest过去之后,却得到了这么一条答复:

Thanks for playing cleave with vue.js. Vue.js is an amazing framework but for now, we will just focus on what we can handle.
So we will not add this support in the original repo, will close this, cheers.

看来只好自己独立发布,为VueJS社区作贡献了……

Usage

直接引用项目 的例子作为展示。 首先建立一个父组件,命名为 App.vue ,其代码如下:

<!-- App.vue -->

<template>
 <Cleave :options='cleaveOptions' v-model='formatedValue'></Cleave>
</template>

<script>
import Cleave from './components/cleave.vue'

export default {
 data() {
  return {
   formatedValue: '',
   cleaveOptions: {
    numeral: true,
    numeralDecimalScale: 4
   }
  }
 },
 watch: {
  'formatedValue': (val) => {
   console.log(val)
  }
 },
 components: {
  Cleave
 }
}

</script>

然后呢? 没有了。

使用方式非常简单,只需要把 cleave.vue 组件import进来进行引用,然后通过动态props的方式在父组件 App.vue 里面把写好的自定义 cleaveOptions 传到 <Cleave/> 里面就行了。我们可以把 <Cleave/> 当作一个普通的 <input/> 元素直接进行使用。

对于自定义的 cleaveOptions ,其设置的内容和 官方文档 是相同的,直接照着设置即可。

PS:对于格式化 电话号码 的问题,需要进入到 cleave.vue 文件,手动引入对应国家的addon包:

require('../lib/addons/phone-type-formatter.{country}')

License

Vue-Cleave is licensed under the Apache License Version 2.0

Cleave.js is included under its Apache License Version 2.0

Google libphonenumber is included under itsApache License Version 2.0

Last but not least...

由于引用包和官方的同步,而官方的包仍然有一些小bug,所以 Vue-Cleave 也会因此带有瑕疵,但我会尽量及时更新维护,也欢迎大家共同维护,一起建立更加完善的VueJS生态圈。

项目地址:https://github.com/jrainlau/vue-cleave

水平有限,如有发现任何错漏还请指点一二。我是Jrain,欢迎关注我的专栏,不定期分享自己的学习体验,开发心得,搬运墙外的干货。下次见啦,谢谢大家!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 图片上传预览-兼容标准
Jun 01 Javascript
浅谈Javascript Base64 加密解密
Dec 28 Javascript
jQuery unbind()方法实例详解
Jan 19 Javascript
学好js,这些js函数概念一定要知道【推荐】
Jan 19 Javascript
jQuery插件FusionCharts绘制的2D帕累托图效果示例【附demo源码】
Mar 28 jQuery
Centos6.8下Node.js安装教程
May 12 Javascript
使用重写url机制实现验证码换一张功能
Aug 01 Javascript
原生js实现简单的模态框示例
Sep 08 Javascript
Vue多种方法实现表头和首列固定的示例代码
Feb 02 Javascript
关于jquery layui弹出层的使用方法
Apr 21 jQuery
vant 自定义 van-dropdown-item的用法
Aug 05 Javascript
了不起的11个JavaScript代码重构最佳实践小结
Jan 11 Javascript
webpack配置proxyTable时pathRewrite无效的解决方法
Dec 13 #Javascript
node.js学习笔记之koa框架和简单爬虫练习
Dec 13 #Javascript
浅谈vuex actions和mutation的异曲同工
Dec 13 #Javascript
webpack3里使用uglifyjs压缩js时打包报错的解决
Dec 13 #Javascript
javascript对HTML字符转义与反转义
Dec 13 #Javascript
Web安全之XSS攻击与防御小结
Dec 13 #Javascript
JavaScript实现邮箱后缀提示功能的示例代码
Dec 13 #Javascript
You might like
PHP中通过ADO调用Access数据库的方法测试不通过
2006/12/31 PHP
php生成excel文件的简单方法
2014/02/08 PHP
Destoon模板制作简明教程
2014/06/20 PHP
实例讲解PHP面向对象之多态
2014/08/20 PHP
跨域表单提交状态的变相判断代码
2009/11/12 Javascript
jQuery 操作下拉列表框实现代码
2010/02/22 Javascript
js和html5实现手机端刮刮卡抽奖效果完美兼容android/IOS
2013/11/18 Javascript
JavaScript实现查找字符串中第一个不重复的字符
2014/12/29 Javascript
使用Promise解决多层异步调用的简单学习心得
2016/05/17 Javascript
动态加载js、css的简单实现代码
2016/05/26 Javascript
JS组件Bootstrap Table布局详解
2016/05/27 Javascript
浅谈jQuery animate easing的具体使用方法(推荐)
2016/06/17 Javascript
JS采用绝对定位实现回到顶部效果完整实例
2016/06/20 Javascript
BootstrapValidator不触发校验的实现代码
2016/09/28 Javascript
Angular2 多级注入器详解及实例
2016/10/30 Javascript
详解原生js实现offset方法
2017/06/15 Javascript
Canvas放置反弹效果随机图形(实例)
2017/08/17 Javascript
用React-Native+Mobx做一个迷你水果商城APP(附源码)
2017/12/25 Javascript
[01:22]DOTA2神秘商店携大量周边降临完美大师赛
2017/11/07 DOTA
[44:40]Spirit vs Navi Supermajor小组赛 A组败者组第一轮 BO3 第一场 6.2
2018/06/03 DOTA
Python判断文件或文件夹是否存在的三种方法
2017/07/27 Python
对Python3.x版本print函数左右对齐详解
2018/12/22 Python
对Pycharm创建py文件时自定义头部模板的方法详解
2019/02/12 Python
python 抓包保存为pcap文件并解析的实例
2019/07/23 Python
pytorch神经网络之卷积层与全连接层参数的设置方法
2019/08/18 Python
python实现ip地址的包含关系判断
2020/02/07 Python
matplotlib jupyter notebook 图像可视化 plt show操作
2020/04/24 Python
带有css3动画效果的兼容多浏览器简单导航条示例
2014/01/26 HTML / CSS
英国航空官网:British Airways
2016/09/11 全球购物
"引用"与多态的关系
2013/02/01 面试题
媒体宣传策划方案
2014/05/25 职场文书
诚实守信道德模范事迹材料
2014/08/15 职场文书
垂直极限观后感
2015/06/08 职场文书
2015年初中教务处工作总结
2015/07/21 职场文书
pygame面向对象的飞行小鸟实现(Flappy bird)
2021/04/01 Python
windows安装python超详细图文教程
2021/05/21 Python