最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue.js如何獲取data-*的值

 更新時間:2022年09月21日 10:52:31   作者:大前端工程師  
這篇文章主要介紹了Vue.js如何獲取data-*的值,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

data-*

這個屬性熟悉JS的小伙伴都知道,data-*是一個自定義屬性,它的功能是視圖層往js傳遞我們想要傳的數(shù)據(jù)。我們的JS可以控制視圖層,但是我們往往需要用戶操作視圖層,邏輯層也能夠獲取用戶的交互值,這個時候我們就需要data-*屬性了

獲取普通數(shù)據(jù)

我們的js數(shù)據(jù)類型大體上可分為,數(shù)字類型,字符類型,布爾值類型,對象類型。其實(shí)還有undefined和null

我把數(shù)字類型,字符類型,布爾值類型稱之為普通數(shù)據(jù)類型,我們接下來分別演示

靜態(tài)獲取

靜態(tài)獲取指的是我們的data-*是寫死的,不是動態(tài)的

html代碼

<div id="app">
	<div :style="myStyle" data-num=1 data-str="hello" data-bool=true @click="click($event)"></div>
</div>

js代碼

var app=new Vue({
	el:'#app',
	//myStyle是樣式對象
	data() {
		return{
			myStyle:{
				background:"red",
				width:100+"px",
				height:100+"px"
			}
		}
	},
	methods:{
		click:function(e){
		    //e.target.dataset可以獲取數(shù)值
			console.log(e.target.dataset)
		}
	}
})

點(diǎn)擊紅色塊之后的效果:

注意看右邊的數(shù)據(jù),返回的全是字符串。可是我們傳遞的數(shù)值有的不是字符串,但是全部轉(zhuǎn)化成了字符串了。我們只能后續(xù)進(jìn)行類型轉(zhuǎn)化了

動態(tài)獲取

動態(tài)獲取數(shù)據(jù)指的是我們獲取的數(shù)據(jù)是動態(tài)的,通常我們喜歡用在v-for中,用于判斷用戶點(diǎn)擊列表為第多少項(xiàng)

html

<div id="app">
	<ul>
		<li v-for="(item,index) in datalist" :data-op="index" @click="click($event)">{{item.name}}</li>
	</ul>
</div>

js

var app=new Vue({
	el:'#app',
	data() {
		return{
			datalist:[
				{
					id:0,
					name:'小明',
				},
				{
					id:1,
					name:'小紅',
				},
				{
					id:2,
					name:'小剛',
				}
			]
		}
	},
	methods:{
		click:function(e){
			let {op}=e.target.dataset
			console.log("選中了第"+(parseInt(op)+1)+"項(xiàng)")
		}
	}
})

點(diǎn)擊li之后的效果

獲取對象數(shù)據(jù)

對象數(shù)據(jù)與普通數(shù)據(jù)不同,它們需要使用JSON.stringfy進(jìn)行字符串化

動態(tài)獲取

HTML

<div id="app">
	<ul>
		<li v-for="(item) in datalist" :data-item="JSON.stringify(item)" @click="click($event)">
			{{item.name}}</li>
	</ul>
</div>

js

var app = new Vue({
	el: '#app',
	data() {
		return {
			datalist: [{
					id: 0,
					name: '小明',
				},
				{
					id: 1,
					name: '小紅',
				},
				{
					id: 2,
					name: '小剛',
				}
			]
		}
	},
	methods: {
		click: function(e) {
			let {
				item
			} = e.target.dataset
			item = JSON.parse(item)
			console.log(item)
		}
	}
})

如果遇到特殊字符報錯的話,嘗試修改JS代碼如下:

click: function(e) {
	let {
		item
	} = e.target.dataset
	item=encodeURIComponent(item)
	item = JSON.parse(decodeURIComponent(item))
	console.log(item)
}

進(jìn)行編碼和解碼序列化操作就好了

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue.js實(shí)現(xiàn)會動的簡歷(包含底部導(dǎo)航功能,編輯功能)

    vue.js實(shí)現(xiàn)會動的簡歷(包含底部導(dǎo)航功能,編輯功能)

    這篇文章主要介紹了vue.js實(shí)現(xiàn)一個會動的簡歷(包含底部導(dǎo)航功能,編輯功能),本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-04-04
  • 淺析vue插槽和作用域插槽的理解

    淺析vue插槽和作用域插槽的理解

    插槽,也就是slot,是組件的一塊HTML模板,這塊模板顯示不現(xiàn)實(shí)、以及怎樣顯示由父組件來決定。這篇文章主要介紹了淺析vue插槽和作用域插槽的理解,需要的朋友可以參考下
    2019-04-04
  • vue2.0基于vue-cli+element-ui制作樹形treeTable

    vue2.0基于vue-cli+element-ui制作樹形treeTable

    這篇文章主要介紹了vue2.0基于vue-cli+element-ui制作樹形treeTable,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • vue框架編輯接口頁面下拉級聯(lián)選擇并綁定接口所屬模塊

    vue框架編輯接口頁面下拉級聯(lián)選擇并綁定接口所屬模塊

    這篇文章主要為大家介紹了vue框架編輯接口頁面實(shí)現(xiàn)下拉級聯(lián)選擇以及綁定接口所屬模塊,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • Vue中使用md5進(jìn)行數(shù)據(jù)加密的實(shí)現(xiàn)方法

    Vue中使用md5進(jìn)行數(shù)據(jù)加密的實(shí)現(xiàn)方法

    在現(xiàn)代Web開發(fā)中,數(shù)據(jù)安全是一個不可忽視的重要環(huán)節(jié),Vue.js作為一個流行的前端框架,不僅提供了強(qiáng)大的數(shù)據(jù)綁定和組件化功能,還支持與各種后端服務(wù)的集成,本文將探討如何在Vue應(yīng)用中使用MD5算法來加密數(shù)據(jù),從而提升應(yīng)用的安全性,需要的朋友可以參考下
    2024-10-10
  • 解決Vue項(xiàng)目中tff報錯的問題

    解決Vue項(xiàng)目中tff報錯的問題

    這篇文章主要介紹了解決Vue項(xiàng)目中tff報錯的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • vue 引入公共css文件的簡單方法(推薦)

    vue 引入公共css文件的簡單方法(推薦)

    下面小編就為大家分享一篇vue 引入公共css文件的簡單方法(推薦),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • Vue3項(xiàng)目實(shí)現(xiàn)前端導(dǎo)出Excel的示例代碼

    Vue3項(xiàng)目實(shí)現(xiàn)前端導(dǎo)出Excel的示例代碼

    這篇文章主要介紹了Vue3項(xiàng)目實(shí)現(xiàn)前端導(dǎo)出Excel的示例,在vue3的項(xiàng)目中導(dǎo)出Excel表格的功能,可以借助xlsx庫來實(shí)現(xiàn),下面是詳細(xì)的操作步驟,需要的朋友可以參考下
    2025-01-01
  • uniapp和vue的區(qū)別詳解

    uniapp和vue的區(qū)別詳解

    這篇文章主要介紹了uniapp和vue的區(qū)別,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-10-10
  • vue項(xiàng)目點(diǎn)擊元素后如何改變樣式

    vue項(xiàng)目點(diǎn)擊元素后如何改變樣式

    這篇文章主要介紹了vue項(xiàng)目點(diǎn)擊元素后如何改變樣式問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10

最新評論

巩义市| 博白县| 石家庄市| 德阳市| 克拉玛依市| 娄底市| 北流市| 新竹县| 黔西县| 壤塘县| 西吉县| 阿鲁科尔沁旗| 香格里拉县| 龙江县| 平凉市| 德令哈市| 荔浦县| 平遥县| 威远县| 嘉黎县| 囊谦县| 奉节县| 霍林郭勒市| 望城县| 涡阳县| 岢岚县| 图木舒克市| 鄂托克前旗| 湘潭县| 嵊州市| 太和县| 巴马| 连州市| 鄱阳县| 逊克县| 云和县| 光泽县| 滁州市| 黑河市| 云浮市| 岫岩|