亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何僅在單擊“新建”選項時打開我的模式?

如何僅在單擊“新建”選項時打開我的模式?

弒天下 2023-08-18 14:13:33
僅當我單擊“新建”選項時,我才嘗試在 VueJS 中打開我的模式,我該怎么做?      <select v-model="input.des"   @change="$refs.modalName.openModal()">                         <option value="A">A</option>            <option value="B">B</option>           <option value="New">New</option>          </select>openModal() {  this.show = true;  document.querySelector("body").classList.add("overflow-hidden");},
查看完整描述

2 回答

?
幕布斯7119047

TA貢獻1794條經驗 獲得超8個贊

最簡單的方法是watch更改選項:


new Vue({

  el: '#app',


  data() {

    return {

      input: {

        des: ''

      },


      show: false

    }

  },


  methods: {

    openModal() {

      this.show = true;

      document.body.classList.add('overflow-hidden');

    }

  },


  watch: {

    'input.des'(val) {

      if (val === 'New') {

        //this.$refs.modalName.openModal();


        this.openModal();


        alert('Modal opened');

      }

    }

  }

})

<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue.js"></script>


<div id="app">

  <select v-model="input.des">

    <option value="A">A</option>

    <option value="B">B</option>

    <option value="New">New</option>

  </select>

</div>


查看完整回答
反對 回復 2023-08-18
?
慕哥9229398

TA貢獻1877條經驗 獲得超6個贊

您可以從 中獲取所選選項的選定值event.target

將您的代碼更改為:

<select v-model="input.des" @change="$refs.modalName.openModal">? ? ? ? ? ? ??

? ? <option value="A">A</option>

? ? <option value="B">B</option>

? ? <option value="New">New</option>

</select>


openModal(event) {

? ? if (event.target.value == "New") {

? ? ? ? this.show = true;

? ? ? ? document.querySelector("body").classList.add("overflow-hidden");

? ? }

},


查看完整回答
反對 回復 2023-08-18
  • 2 回答
  • 0 關注
  • 153 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號