溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Vue中v-show添加表達式的問題(判斷是否顯示)

發布時間:2020-10-21 03:53:48 來源:腳本之家 閱讀:308 作者:jmin_coming 欄目:web開發

一、需求場景

1、先來說說我的需求,有數據來源和標簽類型兩行選項,如下圖所示:

Vue中v-show添加表達式的問題(判斷是否顯示)

2、根據需求,我需要在點擊上面的某個數據來源的時候,下面的標簽類型自動切換,

需求說明如下:

Vue中v-show添加表達式的問題(判斷是否顯示)

3、一開始 是想寫死的,就是把各種情況寫死在頁面上,后來查看官方文檔一會,數據來源的集合可以這樣寫,id為各個類型的標識,name為名稱,mark為點擊某個數據來源 的時候標簽類型根據當前點擊的數據來源進行判斷切換。如下圖:

 infoTypeList: [
 {
  id: 11,
  name: '新聞',
  mark: 'news'
 },
 {
  id: 13,
  name: '論壇',
  mark: 'bbs'
 },
 {
  id: 17,
  name: '微博',
  mark: 'wb'
 },
 {
  id: 6,
  name: '微信',
  mark: 'wx'
 },
 {
  id: 7,
  name: 'APP',
  mark: 'app'
 },
 {
  id: 8,
  name: '平媒',
  mark: 'pm'
 },
 {
  id: 20,
  name: '境外',
  mark: 'overseas'
 },
 {
  id: 21,
  name: 'Facebook',
  mark: 'facebook'
 },
 {
  id: 22,
  name: 'Twitter',
  mark: 'twitter'
 }
],

4、然后標簽類型集合數據結構如下,其中mark字段存放哪些數據來源包含于當前標簽。

markTypeList: [
{
id: 32,
name: '主帖',
mark: 'bbs'
},
{
id: 33,
name: '回帖',
mark: 'bbs'
},
{
id: 34,
name: '原創',
mark: 'wb'
},
{
id: 35,
name: '轉發',
mark: 'wb_wx'
},
{
id: 36,
name: '頭條',
mark: 'news_app_wx_pm'
},
{
id: 37,
name: '頭圖',
mark: 'app'
},
{
id: 38,
name: '置頂',
mark: 'app'
},
{
id: 39,
name: '要聞',
mark: 'news'
},
{
id: 40,
name: '頭版',
mark: 'pm'
},
],

5、在數據來源的各個名稱中加入一個點擊事件,data中存入一個變量infoTypeMark,用于保存點擊的數據來源標識,我也數據來源的代碼貼出來了。

<div v-if="isShowSingleInfoType">
<label class="left-10">數據來源</label>
<span class="info-type activecolor" @click="changeInfoType(-1)">全部</span>
<span class="info-type" @click="changeInfoType(item.id, item.mark)" v-for="item in infoTypeList" :key="item.id">{{item.name}}</span>
<label class="multichoose">
<Button @click="toggleInfoType" size="small">+多選</Button>
</label>
</div>

6、重點是下面這一行代碼,通過在v-show中添加表達式,用于判斷點擊新聞,應該顯示頭條和要聞,主要看標紅的那塊,代碼如下:

<div class="layout-content-main">
<label class="left-10">

標簽類型

</label>
<span class="mark-type activecolor" @click="changeMarkType(-1)">全部</span>
<span v-show="item.mark.indexOf(infoTypeMark) > -1" class="mark-type" @click="changeMarkType(item.id)" v-for="item in markTypeList" :key="item.id">{{item.name}}</span>
</div>

總結

以上所述是小編給大家介紹的Vue中v-show添加表達式的問題(判斷是否顯示),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女