el-input 點擊空白處下拉框消失,點擊input顯示下拉框

1.因為el-input 沒有點擊input以外的事件
2.所以應該用自定義指令來實現(xiàn)瞳购,下拉是否顯示還是隱藏
3.判斷是否點擊的是input话侄,如果點擊input以外的地方都隱藏,點擊input顯示
簡單想應該怎么實現(xiàn)学赛?
1年堆、肯定是給document增加一個click事件監(jiān)聽
2、當發(fā)生click事件的時候判斷是否點擊的當前對象
結(jié)合著本思路和指令咱們來實現(xiàn)盏浇。

簡單介紹vue指令
一個指令定義對象可以提供如下幾個鉤子函數(shù) (均為可選):

bind:只調(diào)用一次嘀韧,指令第一次綁定到元素時調(diào)用。在這里可以進行一次性的初始化設(shè)置缠捌。
inserted:被綁定元素插入父節(jié)點時調(diào)用 (僅保證父節(jié)點存在,但不一定已被插入文檔中)译蒂。
update:所在組件的 VNode 更新時調(diào)用曼月,但是可能發(fā)生在其子 VNode 更新之前。指令的值可能發(fā)生了改變柔昼,也可能沒有哑芹。但是你可以通過比較更新前后的值來忽略不必要的模板更新 (詳細的鉤子函數(shù)參數(shù)見下)。
componentUpdated:指令所在組件的 VNode 及其子 VNode 全部更新后調(diào)用捕透。
unbind:只調(diào)用一次聪姿,指令與元素解綁時調(diào)用。
直接上代碼

寫在export default上面
const clickoutside = {
  // 初始化指令
  bind(el, binding, vnode) {
    function documentHandler(e) {
      // 這里判斷點擊的元素是否是本身乙嘀,是本身末购,則返回
      if (el.contains(e.target)) {
        return false;
      }
      // 判斷指令中是否綁定了函數(shù)
      if (binding.expression) {
        // 如果綁定了函數(shù) 則調(diào)用那個函數(shù),此處binding.value就是handleClose方法
        binding.value(e);
      }
    }
    // 給當前元素綁定個私有變量虎谢,方便在unbind中可以解除事件監(jiān)聽
    el.__vueClickOutside__ = documentHandler;
    document.addEventListener('click', documentHandler);
  },
  update() {},
  unbind(el, binding) {
    // 解除事件監(jiān)聽
    document.removeEventListener('click', el.__vueClickOutside__);
    delete el.__vueClickOutside__;
  },
};

data里面寫


      show: true, //默認是顯示的

data下面寫 directives: { clickoutside },注冊


  methods: {
    handleClose(e) {
        var myPanel = document.getElementById('myPanel')// 得到點擊出現(xiàn)的節(jié)點(input)
        if (myPanel) {
          this.show = true// 有改節(jié)點的時候盟榴,顯示,解決第二次點擊openAddress按鈕出現(xiàn)的bug
          if (!(myPanel.contains(e.target))) { // 這句是說如果我們點擊到了id為myPanel以外的區(qū)域婴噩,為false
            this.show = false// 消失
          }
        }
    },

html結(jié)構(gòu)


<div class="search_box">
        <!-- <img src="../assets/img/logo-mini.png" alt="" @click="gotoSearch" /> -->
        <img src="../assets/img/logo-word@3x.png" alt="" @click="gotoSearch" />
        <yto-input
          id="myPanel"
          type="text"
          :class="{ 'activeInput': historyList.length>0}"
          class="input-search"
          placeholder="請輸入關(guān)鍵字"
          v-model.trim="searchKey"
          @change="searchList"
          @focus="searchListFocus"
          ref="searchInput"
          :trigger-on-focus="true"
          autocomplete="off"
          autocapitalize="off"
          autocorrect="off"
          autofocus
        ></yto-input>
        <el-button type="primary" class="search_btn" @click="search"
          >搜索一下</el-button
        >
      </div>
      <!--歷史記錄--> 這個是否顯示
      <div  class="historyBox show" v-show="show" v-clickoutside="handleClose">
        <p>歷史記錄 <i class="el-icon-delete delete"  @click="deleteFn"></i></p>
        <div
               v-for="item in historyList"
               :key="item.id"
               @click="itemHistory(item.vocabulary)"
               v-if="historyList.length>0&&item.vocabulary"
        >
          {{item.vocabulary}}
        </div>
      </div>

點擊每一項歷史記錄的時候歷史記錄下拉框消失

    //點擊歷史記錄每個點擊事件擎场,值付給input
    itemHistory(vocabulary){
      this.searchKey=vocabulary
      this.show=false;
      this.search() //搜索接口
    },

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末羽德,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子迅办,更是在濱河造成了極大的恐慌宅静,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,657評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件站欺,死亡現(xiàn)場離奇詭異姨夹,居然都是意外死亡,警方通過查閱死者的電腦和手機镊绪,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評論 3 394
  • 文/潘曉璐 我一進店門匀伏,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人蝴韭,你說我怎么就攤上這事够颠。” “怎么了榄鉴?”我有些...
    開封第一講書人閱讀 164,057評論 0 354
  • 文/不壞的土叔 我叫張陵履磨,是天一觀的道長。 經(jīng)常有香客問我庆尘,道長剃诅,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,509評論 1 293
  • 正文 為了忘掉前任驶忌,我火速辦了婚禮矛辕,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘付魔。我一直安慰自己聊品,他們只是感情好,可當我...
    茶點故事閱讀 67,562評論 6 392
  • 文/花漫 我一把揭開白布几苍。 她就那樣靜靜地躺著翻屈,像睡著了一般。 火紅的嫁衣襯著肌膚如雪妻坝。 梳的紋絲不亂的頭發(fā)上伸眶,一...
    開封第一講書人閱讀 51,443評論 1 302
  • 那天,我揣著相機與錄音刽宪,去河邊找鬼厘贼。 笑死,一個胖子當著我的面吹牛圣拄,可吹牛的內(nèi)容都是我干的涂臣。 我是一名探鬼主播,決...
    沈念sama閱讀 40,251評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼赁遗!你這毒婦竟也來了署辉?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,129評論 0 276
  • 序言:老撾萬榮一對情侶失蹤岩四,失蹤者是張志新(化名)和其女友劉穎哭尝,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體剖煌,經(jīng)...
    沈念sama閱讀 45,561評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡材鹦,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,779評論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了耕姊。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片桶唐。...
    茶點故事閱讀 39,902評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖茉兰,靈堂內(nèi)的尸體忽然破棺而出尤泽,到底是詐尸還是另有隱情,我是刑警寧澤规脸,帶...
    沈念sama閱讀 35,621評論 5 345
  • 正文 年R本政府宣布坯约,位于F島的核電站,受9級特大地震影響莫鸭,放射性物質(zhì)發(fā)生泄漏闹丐。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,220評論 3 328
  • 文/蒙蒙 一被因、第九天 我趴在偏房一處隱蔽的房頂上張望卿拴。 院中可真熱鬧,春花似錦梨与、人聲如沸堕花。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至如贷,卻和暖如春陷虎,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背杠袱。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評論 1 269
  • 我被黑心中介騙來泰國打工尚猿, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人楣富。 一個月前我還...
    沈念sama閱讀 48,025評論 2 370
  • 正文 我出身青樓凿掂,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子庄萎,可洞房花燭夜當晚...
    茶點故事閱讀 44,843評論 2 354

推薦閱讀更多精彩內(nèi)容