色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Vue組件為什么data必須是一個(gè)函數(shù)

瀏覽:96日期:2023-01-13 18:14:13

前言

我們需要先復(fù)習(xí)下原型鏈的知識(shí),其實(shí)這個(gè)問題取決于 js ,而并非是 vue 。

function Component(){ this.data = this.data}Component.prototype.data = { name:’jack’, age:22,}

首先我們達(dá)成一個(gè)共識(shí)(沒有這個(gè)共識(shí),請(qǐng)補(bǔ)充下 js 原型鏈部分的知識(shí)):

實(shí)例它們構(gòu)造函數(shù)內(nèi)的this內(nèi)容是不一樣的。 Component.prototype ,這類底下的方法或者值,都是所有實(shí)例公用的。

解開疑問

基于此,我們來看看這個(gè)問題:

function Component(){ }Component.prototype.data = { name:’jack’, age:22,}var componentA = new Component();var componentB = new Component();componentA.data.age=55;console.log(componentA,componentB)

此時(shí),componentA 和 componentB data之間指向了同一個(gè)內(nèi)存地址,age 都變成了 55, 導(dǎo)致了問題!

接下來很好解釋為什么 vue 組件需要 function 了:

function Component(){ this.data = this.data()}Component.prototype.data = function (){ return { name:’jack’, age:22,}}var componentA = new Component();var componentB = new Component();componentA.data.age=55;console.log(componentA,componentB)

此時(shí),componentA 和 componentB data之間相互獨(dú)立, age 分別是 55 和 22 ,沒有問題!

總結(jié)

自己突然對(duì)這個(gè)問題懵逼,不過事后想了想還是自己基礎(chǔ)知識(shí)忘得太快。以前學(xué)習(xí) js 的時(shí)候,最基礎(chǔ)的:構(gòu)造函數(shù)內(nèi)和原型之間的區(qū)別都模糊了。想不到 vue 這個(gè)小問題讓我溫故而知新了一次。

到此這篇關(guān)于Vue組件為什么data必須是一個(gè)函數(shù)的文章就介紹到這了,更多相關(guān)Vue組件data是函數(shù)內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Vue
相關(guān)文章:
主站蜘蛛池模板: 日本www视频在线观看 | 国产成人精品高清在线观看99 | 久久99久久99 | 精品国产欧美另类一区 | 色伊人国产高清在线 | 伊人色在线视频 | 亚洲欧美日韩在线观看二区 | 米奇777第四久久久99 | 99久久精品免费看国产免费软件 | 中文字幕成人网 | 欧美视频一区二区三区四区 | 中文字幕亚洲欧美日韩不卡 | 亚洲性在线观看 | 亚洲手机视频 | 一区二区三区在线 | 日本 | 国产成人在线免费观看 | 国产精品亚洲第五区在线 | 国产专区一va亚洲v天堂 | 精品国产品香蕉在线观看 | 国产免费一级精品视频 | 午夜主播福利视频在线观看 | 可以免费看黄的网站 | 色天天躁夜夜躁天干天干 | 青木玲中文字幕一区二区 | 精品一区二区三区在线播放 | 91精品国产综合久久香蕉 | 一级片在线观看 | 国内精品线在线观看 | 国产精品美女免费视频大全 | 亚洲综合成人网在线观看 | 欧美综合自拍亚洲综合百度 | 韩国毛片免费播放 | 国产一区私人高清影院 | 自拍第一页 | 久草在线中文最新视频 | 亚洲天堂网在线播放 | 一级黄色大片 | 国产精品亚洲综合网站 | 欧美亚洲日本国产综合网 | 亚洲夜色 | 青青自拍|