Javascript 如何将cleave.js与Vue中的元素组合?
我将Vue.js 2与元素一起使用,我想使用cleve.js进行掩蔽 我了解如何使用数据和计算属性在Vue中制作基本遮罩。然而,我不想重做克里夫所有的好工作 我还发现了vue克里夫。这似乎是将CLIVE与Vue结合使用的一种好方法。尽管vue将ads拆分为标准的Javascript 如何将cleave.js与Vue中的元素组合?,javascript,vuejs2,element,cleave,Javascript,Vuejs2,Element,Cleave,我将Vue.js 2与元素一起使用,我想使用cleve.js进行掩蔽 我了解如何使用数据和计算属性在Vue中制作基本遮罩。然而,我不想重做克里夫所有的好工作 我还发现了vue克里夫。这似乎是将CLIVE与Vue结合使用的一种好方法。尽管vue将ads拆分为标准的输入元素。我正在使用Element,因此需要一种使用el输入的方法 这是大多数Vue屏蔽器的常见问题,它们似乎在页面中添加了标准的input元素 所以,我的问题是:当使用元素时,Vue集成Cleave.js的方式是什么 参考资料: 要素:
输入
元素。我正在使用Element,因此需要一种使用el输入的方法
这是大多数Vue屏蔽器的常见问题,它们似乎在页面中添加了标准的input
元素
所以,我的问题是:当使用元素时,Vue集成Cleave.js的方式是什么
参考资料:
要素:
Cleave.js:
Vue CLIVE:我发现了这篇文章:
这解释了如何在Vue中使用JQuery。我遵循该模式,将Vue与CLIVE集成如下:
SMARTCLIVE.vue
<template>
<input />
</template>
<script>
/* eslint-disable no-new */
import Cleave from 'cleave.js'
export default {
mounted () {
new Cleave(this.$el, {
date: true,
datePattern: ['d', 'm', 'Y']
})
this.$el.oninput = (e) => {
console.log('oninput the field', e.target.value)
this.$emit('oninput', e.target.value)
}
}
}
</script>
/*eslint禁用无新*/
从“Cleave.js”导入Cleave
导出默认值{
挂载(){
新劈开(这个$el{
日期:对,
日期模式:['d','m','Y']
})
这.$el.oninput=(e)=>{
console.log('oninput the field',e.target.value)
此.emit('oninput',例如target.value)
}
}
}
App.vue
<template>
<div id="app">
<smart-cleave @oninput="logIt"></smart-cleave>
<div>{{date}}</div>
</div>
</template>
<script>
/* eslint-disable no-new */
import Cleave from 'cleave.js'
import SmartCleave from './components/SmartCleave'
new Cleave('#plain-input', {
date: true,
datePattern: ['d', 'm', 'Y']
})
export default {
name: 'app',
components: {
SmartCleave
},
data () {
return {
date: ''
}
},
methods: {
logIt (val) {
console.log('cahnged', val)
this.date = val
}
}
}
</script>
<style>
#app {
font-family: 'Avenir', Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
/* text-align: center; */
color: #2c3e50;
margin-top: 60px;
}
</style>
{{date}}
/*eslint禁用无新*/
从“Cleave.js”导入Cleave
从“./components/SmartCleave”导入SmartCleave
新劈开(“#普通输入”{
日期:对,
日期模式:['d','m','Y']
})
导出默认值{
名称:“应用程序”,
组成部分:{
智能劈开
},
数据(){
返回{
日期:''
}
},
方法:{
洛吉特(瓦尔){
console.log('cahnged',val)
this.date=val
}
}
}
#应用程序{
字体系列:“Avenir”、Helvetica、Arial、无衬线字体;
-webkit字体平滑:抗锯齿;
-moz osx字体平滑:灰度;
/*文本对齐:居中*/
颜色:#2c3e50;
边缘顶部:60像素;
}