搜尋

首頁  >  問答  >  主體

Vue中使用API​​內容渲染的彈出清單的開啟方式

<p>我正在嘗試在渲染的清單中使用來自API請求的自訂內容打開彈出視窗。 </p> <p>目前,我有以下程式碼:</p> <pre class="brush:php;toolbar:false;"><template> <div class="biblio__all"> <a v-for="i in items" v-bind:key="i.id" class="biblio__item"> <div class="biblio__text"> <h3 class="biblio__title">{{ i.gsx$titre.$t }}</h3> <p class="biblio__author">{{ i.gsx$auteur.$t }}</p> </div> </a> <div class="hidden">這裡放彈出視窗的內容</div> </div> </template> <script lang="ts"> import { defineComponent } from "vue"; export default defineComponent({ data () { return{ items: [], } }, created(){ this.axios.get("///API URL") .then(response => (this.items = response.data.feed.entry)) }, methods: { } }) </script></pre> <p>我希望在v-for中有另一個隱藏的div,當我點擊連結時,彈出視窗出現。 </p> <p>我在items數組中有彈出視窗的所有資料。 </p>
P粉212971745P粉212971745462 天前474

全部回覆(1)我來回復

  • P粉063039990

    P粉0630399902023-08-29 12:55:47

    你可以為每個專案建立一個單獨的元件,並在該元件中處理其模態狀態。你可以使用bootstrap、bulma或純html、css來製作模態框。使用v-show="modalState"來隱藏或顯示模態框。在你的子元件中定義modalState

    data() {
        return {
            modalState: false
        }
    }

    你的最終結構:

    <div class="biblio__all">
          <a v-for="i in items" v-bind:key="i.id" class="biblio__item">
              <!-- 拥有模态框和主要项目代码的组件 -->
              <subitem :item="i" />
          </a>
    
      </div>

    回覆
    0
  • 取消回覆