日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > vue >内容正文

vue

vue选中点击的元素_vue中v-for循环选中点击的元素并对该元素添加样式操作

發布時間:2025/3/11 vue 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vue选中点击的元素_vue中v-for循环选中点击的元素并对该元素添加样式操作 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

相信大家都會遇到這種情況:v-for循環時,我只需要點擊到的元素做出相應反應,其他的元素不變;但是往往所有v-for循環出的元素都會變化。如下面的代碼:我需要點擊到的元素添加一個類樣式,其他元素不變,但是這樣會導致所有的元素都會變化

html:

{{item.name}}

css:

.addclass{

color : red;

}

js:

data:{

items :[

{

name :'apple',

price: '5$'

},

{

name:'banana',

price:"3$"

},

{

name:'pear',

price:'4$'

}

],

isactive : false

}

onclick(){

this.isactive = true

}

解決方法:使用index索引,當點擊一個元素時,將該元素的index索引賦給類樣式的啟用變量,如果該變量和index相等時,則啟用該類樣式

html:

{{item.name}}

css:

.addclass{

color : red;

}

js:

data:{

items :[

{

name :'apple',

price: '5$'

},

{

name:'banana',

price:"3$"

},

{

name:'pear',

price:'4$'

}

],

isactive : -1

}

onclick(index){

//將點擊的元素的索引賦值給bian變量

this.isactive = index

}

補充知識:v-for 遍歷數組點擊動態綁定樣式

這可能是一個對于任何js開發者來說都非常簡單的問題,或者根本談不上被叫做“問題”,“基操”而已。但是,很遺憾,我為此開了個篇幅簡略記錄下它,因為這是我處于前端開發基礎階段數次阻滯過我的問題,以下暫提供一種解決方案,后續可能補充。

這類問題多見于單頁面應用(SPA)中的側邊欄、表格列等,當我曾拿到這個需求時,我以為我能用Vue中介紹的Class動態綁定來解決,事實上的確如此,但我用錯了,請看我錯誤的解決方法:

HTML

  • name: {{data.name}},age: {{data.age}}

JavaScript

export default {

name: 'classActive'

data() {

return {

isActive: false, // 用來判斷active樣式類是否顯示

formData: [{

id: 1,

name: 'zhangsan',

age: 20

},{

id: 2,

name: 'lisi',

age: 21

},{

id: 3,

name: 'wangwu',

age: 22

}

}

}

methods: {

currentInfo(data, index) {

if(data.id-1 === index) { // 當前選擇的列表項與列表id號相等則綁定active

this.isActive = true;

}

}

}

}

Style

li {

list-style: none;

border: 1px solid #333;

}

.active {

background: light-gray;

}

好,于是我興沖沖地切回頁面看效果,結果:

當我點擊其中的一行時,結果所有的li都綁上了active樣式,稍微想一下,相信大家都能找到問題所在,所有li的樣式都由一個isActive控制,當我點擊一行,全局變量isActive變為ture,當然所有的li都會綁上啦!然后我就停滯下來,思索一番,想過在data數組各項里插入一個標識用來單獨控制,但被我否決了,一來對象中插入屬性麻煩,二來污染數據源。于是,便有了下面我要說的解決方法:

HTML

  • name: {{data.name}},age: {{data.age}}

JavaScript

export default {

name: 'classActive'

data() {

return {

currentNumber: 0, // 用來判斷active樣式類是否顯示

formData: [{

id: 1,

name: 'zhangsan',

age: 20

},{

id: 2,

name: 'lisi',

age: 21

},{

id: 3,

name: 'wangwu',

age: 22

}

}

}

methods: {

currentInfo(index) {

this.currentNumber = index;

},

currentClass(index) {

return [this.currentNumber == index ? 'active' : ''];

}

}

}

Style

li {

list-style: none;

border: 1px solid #333;

}

.active {

background: light-gray;

}

這里,我新建一個變量空間存儲當前點擊的列表序號index,這樣不管怎樣點擊,這個currentNumber永遠是唯一的,那么和它相等的數組項也是唯一的,相等即可綁定active樣式了,看效果:

好,以上就解決了遍歷數組點擊動態綁定樣式,以后我找到更好的,我會補充,也非常歡迎大家在評論里給出更好的建議。

以上這篇vue中v-for循環選中點擊的元素并對該元素添加樣式操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持我們。

時間: 2020-07-14

總結

以上是生活随笔為你收集整理的vue选中点击的元素_vue中v-for循环选中点击的元素并对该元素添加样式操作的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 91国模少妇一区二区三区 | 97在线免费视频 | 中文字幕乱码人妻无码久久 | 樱花电影最新免费观看国语版 | 丁香花电影在线观看免费高清 | 国产精品一区久久久 | 久久亚洲精品国产 | 欧美日韩偷拍视频 | 日日夜夜艹| 美女精品久久久 | 色情毛片| 日韩欧美自拍偷拍 | 亚洲欧美视频一区 | 在线黄色大片 | jzzijzzij亚洲成熟少妇 | 快播91 | 性欧美jzjz2 九草影院 | 青青草国产一区二区三区 | 婷婷久久精品 | 欧美日p视频 | 人妻无码一区二区三区久久99 | gogo亚洲国模私拍人体 | 天天婷婷| 九九九九久久久久 | 91蝌蚪少妇偷拍 | 欧美亚洲综合网 | 性视频黄色 | 亚洲综合在线五月 | 精品成人一区二区 | 亚洲人xxx日本人18 | 日韩a级片在线观看 | 外国黄色网| 美女被到爽高潮视频 | 欧美性免费 | 国产免费a视频 | 国产精品视频久久久久 | 久久人人爽人人爽人人片av高清 | 欧美精品99久久 | 欧美日韩一区二区三区免费 | 国产91清纯白嫩初高中在线观看 | 杨幂毛片| 亚洲特黄特色 | 欧美日在线观看 | 日本免费高清视频 | 国产精品国产三级国产a | 国产视频福利 | 99资源站 | 在线观看中文 | 日韩激情综合网 | 91精品国产成人观看 | 爱爱网站视频 | 波多野吉衣在线视频 | 夜夜艹天天干 | 国产精品2| www婷婷av久久久影片 | 国产男女视频在线观看 | 欧美成人不卡视频 | 精品国产96亚洲一区二区三区 | 麻豆成人久久精品一区二区三区 | 久久久九九九热 | 亚洲欧美bt | 久久疯狂做爰流白浆xx | 污污网站在线免费观看 | 成人h动漫精品一区二区器材 | 亚洲成人黄色 | 成人福利视频 | 日韩国产欧美在线视频 | 欧美色鬼 | 免费的黄色的视频 | 欧美日韩综合一区二区 | 午夜伦理在线观看 | 五月天综合激情网 | 久久久18禁一区二区三区精品 | 五月天综合社区 | 日韩岛国片| 交做爰xxxⅹ性爽 | 天天天天 | 91avcom| 色婷婷基地 | 91麻豆蜜桃一区二区三区 | 红桃视频91| 中文字幕 成人 | 日韩香蕉视频 | 久久黄网 | 国内外成人免费视频 | 婷婷色五 | 亚洲在线| 毛片com| 91久久影院| 竹菊影视一区二区三区 | 欧美一级免费黄色片 | 久久人人精| 国产又黄又粗又硬 | 亚洲男性天堂 | 毛片成人 | 精品国产一区二 | 成人久久精品 | 日韩中文字幕第一页 | 男女免费视频网站 |