最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue輸入框組件開(kāi)發(fā)過(guò)程詳解

 更新時(shí)間:2022年03月01日 13:43:12   作者:GlimmerL  
這篇文章主要為大家詳細(xì)介紹了vue輸入框組件開(kāi)發(fā)過(guò)程,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了vue輸入框組件開(kāi)發(fā)過(guò)程的具體代碼,供大家參考,具體內(nèi)容如下

input-number.js

function isValueNumber(value) {
? ? return(/(^-?[0-9]+\.{1}\d+$)|(^-?[1-9]*$)|(^-?0{1}$)/).test(value + '');
}
Vue.component('input-number',{
?? ?template: '\
?? ?<div class=input-number>\
?? ??? ?<input\
?? ??? ??? ?type="text"\
?? ??? ??? ?:value="currentValue"\
?? ??? ??? ?@change="handleChange"\
?? ??? ??? ?@focus="keyControl">\
?? ??? ?<button \
?? ??? ??? ?@click="handleDown" \
?? ??? ??? ?:disabled="currentValue<=min">-</button>\
?? ??? ?<button \
?? ??? ??? ?@click="handleUp" \
?? ??? ??? ?:disabled="currentValue>=max">+</button>\
?? ?</div>',
?? ?data: function (){
?? ??? ?return {
?? ??? ??? ?currentValue: this.value,
?? ??? ??? ?currentStep: this.$parent.step
?? ??? ?}
?? ?},
?? ?watch: {
?? ??? ?currentValue: function (val){
?? ??? ??? ?this.$emit('input',val);
?? ??? ??? ?this.$emit('on-change',val);
?? ??? ?},
?? ??? ?value: function(val){
?? ??? ??? ?this.updateValue(val);
?? ??? ?}
?? ?},
?? ?methods: {
?? ??? ?handleDown: function(){
?? ??? ??? ?if(this.currentValue<=this.min) return;
?? ??? ??? ?this.currentValue-=this.currentStep;
?? ??? ?},
?? ??? ?handleUp: function(){
?? ??? ??? ?if(this.currentValue>=this.max) return;
?? ??? ??? ?this.currentValue+=this.currentStep;
?? ??? ?},
?? ??? ?updateValue: function(val){
?? ??? ??? ?if(val>this.max) val=this.max;
?? ??? ??? ?if(val<this.min) val=this.min;
?? ??? ??? ?this.currentValue=val;
?? ??? ?},
?? ??? ?handleChange: function(event){
? ? ? ? ? ? var val = event.target.value.trim();
? ? ? ? ? ? var max = this.max;
? ? ? ? ? ? var min = this.min;
? ? ? ? ? ? if(isValueNumber(val)) {
? ? ? ? ? ? ? ? val = Number(val);
? ? ? ? ? ? ? ? this.currentValue = val;
? ? ? ? ? ? ? ? if(val > max) {
? ? ? ? ? ? ? ? ? ? this.current = max;
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? if(val < min) {
? ? ? ? ? ? ? ? ? ? this.current = min;
? ? ? ? ? ? ? ? }
? ? ? ? ? ? } else {
? ? ? ? ? ? ? ? //如果輸入的不是數(shù)字,將輸入的內(nèi)容重置為之前的currentValue
? ? ? ? ? ? ? ? event.target.value = this.currentValue;
? ? ? ? ? ? }
?? ??? ??? ?
?? ??? ?},
?? ??? ?keyControl: function(){
?? ??? ??? ?var _this=this;
?? ??? ??? ?$(window).keydown(function(e){
?? ??? ??? ??? ?if($('input')){
?? ??? ??? ??? ??? ?if(e.keyCode==38){
?? ??? ??? ??? ??? ??? ?_this.handleUp();
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ??? ?else if(e.keyCode==40){
?? ??? ??? ??? ??? ??? ?_this.handleDown();
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ?}
?? ??? ??? ?});
?? ??? ?}
?? ?},
?? ?mounted: function(){
?? ??? ?this.updateValue(this.value);
?? ?},
?? ?props:{
?? ??? ?max:{
?? ??? ??? ?type: Number,
?? ??? ??? ?default: Infinity
?? ??? ?},
?? ??? ?min: {
?? ??? ??? ?type: Number,
?? ??? ??? ?default: -Infinity
?? ??? ?},
?? ??? ?value: {
?? ??? ??? ?type:Number,
?? ??? ??? ?default: 0
?? ??? ?},
?? ??? ?step: {
?? ??? ??? ?type:Number,
?? ??? ??? ?default: 1
?? ??? ?}
?? ?}
})

index.js

var app=new Vue({
?? ?el: "#app",
?? ?data: {
?? ??? ?value: 5,
?? ??? ?step: 10
?? ?}
})

index.html

<!DOCTYPE html>
<html>
?? ?<head>
?? ??? ?<meta charset="utf-8" />
?? ??? ?<title></title>
?? ??? ?<script src="js/jquery.js" type="text/javascript" charset="utf-8"></script>
?? ??? ?<script src="js/vue.js" type="text/javascript" charset="utf-8"></script>
?? ?</head>
?? ?<body>
?? ??? ?<div id="app">
?? ??? ??? ?<input-number v-model="value" :max="100" :min="0"></input-number>
?? ??? ?</div>
?? ??? ?<script src="js/input-number.js" type="text/javascript" charset="utf-8"></script>
?? ??? ?<script src="js/index.js" type="text/javascript" charset="utf-8"></script>
?? ?</body>
</html>

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue項(xiàng)目中使用scss詳細(xì)方法步驟

    vue項(xiàng)目中使用scss詳細(xì)方法步驟

    這篇文章主要給大家介紹了關(guān)于vue項(xiàng)目中使用scss的詳細(xì)方法步驟,scss是一種css預(yù)處理語(yǔ)言,定義了一種新的專(zhuān)門(mén)的編程語(yǔ)言,編譯后形成正常的css文件,為css增加一些編程特性,無(wú)需考慮瀏覽器的兼容性,讓css更加簡(jiǎn)潔、適應(yīng)性更強(qiáng),可讀性更佳,需要的朋友可以參考下
    2023-11-11
  • Vue.js實(shí)現(xiàn)分頁(yè)查詢(xún)功能

    Vue.js實(shí)現(xiàn)分頁(yè)查詢(xún)功能

    這篇文章主要為大家詳細(xì)介紹了Vue.js實(shí)現(xiàn)分頁(yè)查詢(xún)功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • vue嵌套路由與404重定向?qū)崿F(xiàn)方法分析

    vue嵌套路由與404重定向?qū)崿F(xiàn)方法分析

    這篇文章主要介紹了vue嵌套路由與404重定向?qū)崿F(xiàn)方法,結(jié)合實(shí)例形式分析了vue.js嵌套路由與404重定向的概念、原理、實(shí)現(xiàn)步驟與相關(guān)操作技巧,需要的朋友可以參考下
    2018-05-05
  • React和Vue實(shí)現(xiàn)路由懶加載的示例代碼

    React和Vue實(shí)現(xiàn)路由懶加載的示例代碼

    路由懶加載是一項(xiàng)關(guān)鍵技術(shù),它可以幫助我們提高Web應(yīng)用的加載速度,本文主要介紹了React和Vue實(shí)現(xiàn)路由懶加載的示例代碼,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-01-01
  • vue router動(dòng)態(tài)路由設(shè)置參數(shù)可選問(wèn)題

    vue router動(dòng)態(tài)路由設(shè)置參數(shù)可選問(wèn)題

    這篇文章主要介紹了vue-router動(dòng)態(tài)路由設(shè)置參數(shù)可選,文中給大家提到了vue-router 動(dòng)態(tài)添加 路由的方法,需要的朋友可以參考下
    2019-08-08
  • vue cli3適配所有端方案的實(shí)現(xiàn)

    vue cli3適配所有端方案的實(shí)現(xiàn)

    這篇文章主要介紹了vue cli3適配所有端方案的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • vue組件之間通信方式實(shí)例總結(jié)【8種方式】

    vue組件之間通信方式實(shí)例總結(jié)【8種方式】

    這篇文章主要介紹了vue組件之間通信方式,結(jié)合實(shí)例形式總結(jié)分析了vue.js的8種組件通信方式與相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2019-02-02
  • 詳解無(wú)限滾動(dòng)插件vue-infinite-scroll源碼解析

    詳解無(wú)限滾動(dòng)插件vue-infinite-scroll源碼解析

    這篇文章主要介紹了詳解無(wú)限滾動(dòng)插件vue-infinite-scroll源碼解析,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-05-05
  • 詳細(xì)聊聊vue組件是如何實(shí)現(xiàn)組件通訊的

    詳細(xì)聊聊vue組件是如何實(shí)現(xiàn)組件通訊的

    組件間通信簡(jiǎn)單來(lái)說(shuō)就是組件間進(jìn)行數(shù)據(jù)傳遞,就像我們?nèi)粘5拇螂娫?就是通訊的一種方式,下面這篇文章主要給大家介紹了關(guān)于vue組件是如何實(shí)現(xiàn)組件通訊的相關(guān)資料,需要的朋友可以參考下
    2022-05-05
  • vue實(shí)現(xiàn)錨點(diǎn)跳轉(zhuǎn)及滾動(dòng)監(jiān)聽(tīng)的方法

    vue實(shí)現(xiàn)錨點(diǎn)跳轉(zhuǎn)及滾動(dòng)監(jiān)聽(tīng)的方法

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)錨點(diǎn)跳轉(zhuǎn)及滾動(dòng)監(jiān)聽(tīng)的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-07-07

最新評(píng)論

泗阳县| 平凉市| 株洲市| 岫岩| 尼木县| 浏阳市| 枝江市| 红河县| 施秉县| 社旗县| 高州市| 崇义县| 南汇区| 土默特左旗| 文化| 比如县| 互助| 进贤县| 承德市| 阳江市| 明光市| 封开县| 连城县| 盐池县| 卫辉市| 三明市| 株洲县| 新干县| 内丘县| 凤台县| 雅安市| 濮阳县| 太白县| 山东省| 福贡县| 伊宁市| 三台县| 芜湖市| 京山县| 通江县| 宜川县|