在vue中使用laydate插件

今天碰到一個同學(xué)問了laydate在vue中的使用問題透绩,因為以前在項目中也用過laydate羊瘩,也算有一些了解,所以在這里做一個簡單的測試
官方網(wǎng)址:http://www.layui.com/laydate/
GitHub地址:https://github.com/sentsin/laydate/

測試文件:新建vue的webpack模板

1、首先是組件里import引用
這里是在components中的hello.vue中進(jìn)行

<input type="text" id="test" v-model="date" class="ipt" @click="getDate" >
import laydate from 'layui-laydate'
  export default {
    name: 'hello',
    data () {
      return {
        date: null
      }
    },
    methods: {
      getDate () {
        console.log(0)
        laydate.render({
          elem: '#test',
          done: (value) => {
            this.date = value
          }
        })
      }
    }
  }

效果:沒有報錯靠汁,點(diǎn)擊輸入框也沒有反應(yīng)


效果圖1.png

2舰褪、在 組件中單獨(dú)引入不行皆疹,那么我們來嘗試一下在入口文件index.html中做常規(guī)js文件引用,并在index.html中調(diào)用

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1.0">
    <script src="static/laydate/laydate.js"></script>
    <title>laydatedemo</title>
    <style>
      .box{width: 200px; margin:0 auto }
    </style>
  </head>
  <body>
    <div id="app" ></div>
    <!-- built files will be auto injected -->
    <div class="box">
      <input type="text" id="test" >
    </div>
    <script>
      laydate.render({
         elem: '#test',
         done: (value) => {
            this.date = value
          }
       })
    </script>
  </body>
</html>

效果:沒有報錯占拍,laydate能夠正常使用


效果圖2.png

3略就、上面的第二種方式laydate是能夠使用的,但是一般來說項目需求會要求我們是在組件之中調(diào)用laydate晃酒,而不是在入口文件中調(diào)用表牢,那么第三種方法,我們在index.html中引入贝次,而在組件中調(diào)用
index.html

<script src="static/laydate/laydate.js"></script>

hello.vue

<template>
    <div class="hello">
      <H1>laydate時間插件測試</H1>
      <input type="text" id="test" v-model="date" class="ipt" >
    </div>
</template>
<script>
  export default {
    name: 'hello',
    mounted() {
      laydate.render({
        elem: '#test',
        done: (value) => {
          this.date = value
        }
      })
    }
  }
</script>

結(jié)果:運(yùn)行報錯崔兴,提示laydate沒有聲明


運(yùn)行報錯.png

4、我們在入口文件引入了laydate.js蛔翅,并且在入口文件中引用是可行的敲茄,但是在組件中引用卻會報未聲明的錯誤,會不會是我們在入口文件引入的laydate是全局的搁宾,但是在組建中沒有加載到折汞,所以第四次測試時獲取全局的laydate對象,依然是在index.html引入js文件盖腿,然后在組件中調(diào)用
index.html

<script src="static/laydate/laydate.js"></script>

hello.vue

<template>
    <div class="hello">
      <H1>laydate時間插件測試</H1>
      <input type="text" id="test" v-model="date" class="ipt">
    </div>
</template>

<script>
  export default {
    name: 'hello',
    data () {
      return {
        date: null,
        //獲取全局的laydate爽待,帶入到組件中
        laydate: window.laydate
      }
    },
    mounted() {
      this.laydate.render({
        elem: '#test',
        done: (value) => {
          this.date = value
        }
      })
    }
  }
</script>

效果:沒有報錯翩腐,點(diǎn)擊能夠正常調(diào)用laydate


效果圖4.png

這個測試到這里應(yīng)該算是結(jié)束了鸟款,但是既然這個插件能夠在mounted中調(diào)用,那么能不能在methods的方法中調(diào)用呢

附加測試:在4的基礎(chǔ)上進(jìn)行修改茂卦,測試laydate能否在methods中運(yùn)行

index.html

<script src="static/laydate/laydate.js"></script>

hello.vue

<template>
    <div class="hello">
      <H1>laydate時間插件測試</H1>
      <input type="text" id="test" v-model="date" class="ipt"  @click="setDate">
    </div>
</template>

<script>
  export default {
    name: 'hello',
    data () {
      return {
        date: null,
        //獲取全局的laydate何什,帶入到組件中
        laydate: window.laydate
      }
    },
    methods: {
      setDate() {
        this.laydate.render({
          elem: '#test',
          done: (value) => {
            this.date = value
          }
        })
      }
    }
  }
</script>

效果:沒有報錯等龙,點(diǎn)擊第一次,沒有反應(yīng)罐栈,失去焦點(diǎn)之后再重新點(diǎn)擊,時間框出現(xiàn)柑贞,laydate插件調(diào)用成功

對于這個bug棠众,暫時沒有什么頭緒摄欲,如果有大神們知道是怎么回事,歡迎給我留言

注:轉(zhuǎn)載請注明出處

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市励七,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌两波,老刑警劉巖腰奋,帶你破解...
    沈念sama閱讀 218,858評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件屈留,死亡現(xiàn)場離奇詭異灌危,居然都是意外死亡赠摇,警方通過查閱死者的電腦和手機(jī)藕帜,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,372評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來隘弊,“玉大人梨熙,你說我怎么就攤上這事≈视” “怎么了?”我有些...
    開封第一講書人閱讀 165,282評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我掉奄,道長,這世上最難降的妖魔是什么速兔? 我笑而不...
    開封第一講書人閱讀 58,842評論 1 295
  • 正文 為了忘掉前任镀钓,我火速辦了婚禮丁溅,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘棍掐。我一直安慰自己蝠嘉,他們只是感情好蚤告,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,857評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著服爷,像睡著了一般杜恰。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上仍源,一...
    開封第一講書人閱讀 51,679評論 1 305
  • 那天心褐,我揣著相機(jī)與錄音,去河邊找鬼笼踩。 笑死逗爹,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的嚎于。 我是一名探鬼主播掘而,決...
    沈念sama閱讀 40,406評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼于购!你這毒婦竟也來了袍睡?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,311評論 0 276
  • 序言:老撾萬榮一對情侶失蹤肋僧,失蹤者是張志新(化名)和其女友劉穎斑胜,沒想到半個月后控淡,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,767評論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡止潘,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年掺炭,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片覆山。...
    茶點(diǎn)故事閱讀 40,090評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡竹伸,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出簇宽,到底是詐尸還是另有隱情勋篓,我是刑警寧澤,帶...
    沈念sama閱讀 35,785評論 5 346
  • 正文 年R本政府宣布魏割,位于F島的核電站譬嚣,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏钞它。R本人自食惡果不足惜拜银,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,420評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望遭垛。 院中可真熱鬧尼桶,春花似錦、人聲如沸锯仪。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,988評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽庶喜。三九已至小腊,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間久窟,已是汗流浹背秩冈。 一陣腳步聲響...
    開封第一講書人閱讀 33,101評論 1 271
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留斥扛,地道東北人入问。 一個月前我還...
    沈念sama閱讀 48,298評論 3 372
  • 正文 我出身青樓,卻偏偏與公主長得像稀颁,于是被迫代替她去往敵國和親队他。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,033評論 2 355