vue筆記-day1

1.MVVM概念

MVVM的概念-這張圖很值錢(qián).png

2.Vue基本結(jié)構(gòu)代碼和MVVM的對(duì)應(yīng)關(guān)系

<script src="./lib/vue-2.5.16.js"></script>
<!-- 這里創(chuàng)建了一個(gè)容器,將來(lái)Vue就會(huì)控制整個(gè)容器中的所有代碼 -->
<!-- 這個(gè)被vm控制的區(qū)域,就是MVVM中的View層 -->
<div id="app">
    <p>{{msg}}</p>
</div>
<script>
    // new出來(lái)一個(gè)實(shí)例,這個(gè)實(shí)例就是MVVM中的VM層
    const vm=new Vue({
        el:"#app",//通過(guò)el屬性,指定vm調(diào)度者控制頁(yè)面上的哪個(gè)區(qū)域
        data:{  //這個(gè)data對(duì)象就是MVVM中的Model層
            msg:"甄嬛"
        }
    })
</script>

3.插值表達(dá)式

? 插值表達(dá)式的用法:表達(dá)式/三元表達(dá)式,只能用在元素的內(nèi)容區(qū)域

   <div id="app">
    <!-- 插值表達(dá)式的用法 : 表達(dá)式/三元表達(dá)式 -->
    <p>{{msg}}</p>
    <!--  插值表達(dá)式中使用  + 拼接字符串 -->
    <p>{{name+"18歲"}}</p>
    <!-- 插值表達(dá)式中使用  數(shù)字運(yùn)算符 -->
    <p>{{2*3}}</p>
    <!-- 插值表達(dá)式中使用  三元運(yùn)算符 -->
    <p>{{8%2 === 0 ? "偶數(shù)":"奇數(shù)"}}</p>
    <!-- 三元表達(dá)式 從data中取值 -->
    <p>{{age > 18? "已成年":"未成年"}}</p>
</div>
<script>
    const vm=new Vue({
        el:"#app",
        data:{
            msg:"華妃",
            name:"jack",
            age:20
        }
    })
</script>

4.指令v-text

? v-text是用來(lái)渲染文本的,用法: v-text="屬性名"

?注意:只能被使用在標(biāo)簽的屬性上,會(huì)把元素內(nèi)部的內(nèi)容全部替換掉,

  1. v-text 會(huì)把元素內(nèi)部的內(nèi)容都替換掉

       <div id="app">
            <p v-text="msg">123</p>
        </div> 
       const vm=new Vue({
         el:"#app",
         data:{
             msg:"這是一首簡(jiǎn)單的小情歌"
         }
     })
    結(jié)果是:這是一首簡(jiǎn)單的小情歌,,會(huì)把123替換掉
    

5.指令v-html

? v-html是用來(lái)渲染帶標(biāo)簽的文本,用法: v-html="屬性名"

6.插值表達(dá)式,v-text和v-html的區(qū)別

?1.插值表達(dá)式

??1.插值表達(dá)式可以渲染普通的文本,使用在標(biāo)簽的內(nèi)容innerHtml區(qū)域, 用法: {{}}
??注意:插值表達(dá)式不會(huì)清空元素中其它的內(nèi)容, 插值表達(dá)式,只是一個(gè)占位符,不會(huì)清空元素的內(nèi)容,但是在網(wǎng)速慢的情況下,會(huì)出現(xiàn)閃爍的問(wèn)題,v-text沒(méi)有閃爍問(wèn)題,使用v-cloak指令,解決插值表達(dá)式閃爍問(wèn)題

     <p v-cloak>123{{msg}}456</p>
      結(jié)果是:   123這是一首簡(jiǎn)單的小情歌456

? 2.v-text指令

?? v-text指令也可以用來(lái)渲染普通文本,用法:v-text="屬性名"
?? 注意:只能被使用在標(biāo)簽的屬性上,會(huì)把元素內(nèi)部的內(nèi)容全部替換掉,

        <div id="app">
            <p v-text="msg">123</p>
        </div> 
       const vm=new Vue({
         el:"#app",
         data:{
             msg:"這是一首簡(jiǎn)單的小情歌"
         }
     })
    結(jié)果是:這是一首簡(jiǎn)單的小情歌,,會(huì)把123替換掉

? 3.v-html指令

? 1. v-html是用來(lái)渲染帶標(biāo)簽的文本,用法: v-html="屬性名"

7.v-bind指令

? ? 可以用來(lái)動(dòng)態(tài)的綁定屬性,用法: v-bind:屬性名="data中的屬性名",簡(jiǎn)寫(xiě)形式 :屬性名="data中的屬性名",可以用來(lái)綁定class樣式,用法 :class="{'類(lèi)名':布爾值}" 布爾值為true則樣式顯示,為false則樣式不顯示

8.v-for指令

?v-for能夠根據(jù)data中數(shù)據(jù)的變化自動(dòng)刷新視圖,
?注意1: v-for必須結(jié)合key屬性來(lái)使用假勿,它會(huì)唯一標(biāo)識(shí)數(shù)組中的每一項(xiàng),未來(lái)當(dāng)數(shù)組中的那一項(xiàng)改變的時(shí)候,它會(huì)只更新那一項(xiàng),好處就是提升性能裹唆。注意key的值唯一,不能重復(fù)
?注意2: 以下兩種情況不會(huì)觸發(fā)視圖更新
?? 1.使用數(shù)組的length屬性取改變數(shù)組的時(shí)候,不會(huì)觸發(fā)視圖更新(model層數(shù)據(jù)變化了,視圖層沒(méi)有刷新)
?? 2.使用數(shù)組下標(biāo)的方式去改變數(shù)組的時(shí)候,也不會(huì)觸發(fā)視圖更新
?? 解決方法:
?? 1.使用Vue.set(arr,index,newVal) arr是需要改變的數(shù)組,index是數(shù)組里面的項(xiàng),newVal是改變后的值,Vue.set(vm.arr3,0,{name:"小明",age:2222})
?? 2.Array.prototype.splice(),vm.arr1.splice(0,1)刪除arr1數(shù)組中的第一項(xiàng)

1.渲染數(shù)組

? 1. 數(shù)組arr1 ,item是數(shù)組中的每一項(xiàng),arr1是要循環(huán)的數(shù)組

        arr1:["甄嬛","年石蘭","安陵容"],
        <ul>
        <li v-for="item in arr1" :key="item">{{item}}</li>
        </ul>

? 2.數(shù)組arr2

      arr2:[
               {"name":"貂蟬",age:20},
               {"name":"昭君",age:18},
           ],

? ? 渲染方式有兩種:
? ? ? 2.1方法1,item是數(shù)組中的每一項(xiàng),arr2是要循環(huán)的數(shù)組

   <ul>
          <li v-for="item in arr2" :key="item.name">{{item.name}}-----{{item.age}}</li>
    </ul>

? ? ? 2.2方法2,item是數(shù)組中的每一項(xiàng),index是數(shù)組項(xiàng)的索引值,arr2是要循環(huán)的數(shù)組

     <ul>
         <li v-for="(item,index) in arr2" :key="index">{{item.name}}--{{item.age}}-{{index}}</li>
    </ul>

? ###2.渲染對(duì)象
val,key,index分別代表值,鍵,每項(xiàng)的索引

 obj:{
                "郵箱":"247171",
                "電話(huà)":"284561596321",
                "愛(ài)好":"吃飯,睡覺(jué)"
           }
 <ul>
        <li v-for="(val,key,index) in obj" :key="index">{{key}}:{{val}}:{{index}}</li>
 </ul>

9.v-model指令

v-model指令用來(lái)雙向數(shù)據(jù)綁定:就是model和view中的值進(jìn)行同步變化 ,用法:v-model="屬性名"

10.v-on 指令

? v-on用來(lái)監(jiān)聽(tīng)事件dom事件
?用法:
? ?1.v-on:事件類(lèi)型="執(zhí)行的函數(shù)"
? ?2.簡(jiǎn)寫(xiě)@:事件類(lèi)型="執(zhí)行的函數(shù)"
? ?3.參數(shù) @:事件類(lèi)型="執(zhí)行的函數(shù)(實(shí)參)"
? ?4.通過(guò)執(zhí)行函數(shù)中添加event參數(shù)傳遞事件,注意只能是event,并且沒(méi)有雙引號(hào)
? ?5.事件修飾符可以給事件添加特殊功能, .stop阻止單擊事件繼續(xù)傳播 .prevent阻止頁(yè)面跳轉(zhuǎn)

11. v-if和v-show指令

?v-if和v-show用來(lái) 控制元素的顯示和隱藏 v-if="布爾值" v-show="布爾值" ,布爾值為true的時(shí)候顯示,為false的時(shí)候不顯示
? 兩者的區(qū)別:
?? v-if通過(guò)控制dom來(lái)控制元素的顯示和隱藏
??v-show通過(guò)控制樣式display:none來(lái)控制元素的顯示和隱藏
? 使用場(chǎng)景區(qū)別
?? 1.設(shè)計(jì)到大量dom操作的時(shí)候,我們需要使用v-show
??2.設(shè)計(jì)到異步數(shù)據(jù)渲染的時(shí)候就使用v-if

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末讼昆,一起剝皮案震驚了整個(gè)濱河市会喝,隨后出現(xiàn)的幾起案子澡罚,更是在濱河造成了極大的恐慌列荔,老刑警劉巖敬尺,帶你破解...
    沈念sama閱讀 212,718評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件枚尼,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡砂吞,警方通過(guò)查閱死者的電腦和手機(jī)署恍,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,683評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)蜻直,“玉大人盯质,你說(shuō)我怎么就攤上這事「哦” “怎么了唤殴?”我有些...
    開(kāi)封第一講書(shū)人閱讀 158,207評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)到腥。 經(jīng)常有香客問(wèn)我,道長(zhǎng)蔚袍,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,755評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮蠢终,結(jié)果婚禮上廓奕,老公的妹妹穿的比我還像新娘。我一直安慰自己宇整,他們只是感情好瓶佳,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,862評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著鳞青,像睡著了一般霸饲。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上臂拓,一...
    開(kāi)封第一講書(shū)人閱讀 50,050評(píng)論 1 291
  • 那天厚脉,我揣著相機(jī)與錄音,去河邊找鬼胶惰。 笑死傻工,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的孵滞。 我是一名探鬼主播中捆,決...
    沈念sama閱讀 39,136評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼坊饶!你這毒婦竟也來(lái)了泄伪?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,882評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤幼东,失蹤者是張志新(化名)和其女友劉穎臂容,沒(méi)想到半個(gè)月后科雳,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,330評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡脓杉,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,651評(píng)論 2 327
  • 正文 我和宋清朗相戀三年糟秘,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片球散。...
    茶點(diǎn)故事閱讀 38,789評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡尿赚,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出蕉堰,到底是詐尸還是另有隱情凌净,我是刑警寧澤,帶...
    沈念sama閱讀 34,477評(píng)論 4 333
  • 正文 年R本政府宣布屋讶,位于F島的核電站冰寻,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏皿渗。R本人自食惡果不足惜斩芭,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,135評(píng)論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望乐疆。 院中可真熱鬧划乖,春花似錦、人聲如沸挤土。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,864評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)仰美。三九已至迷殿,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間咖杂,已是汗流浹背贪庙。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,099評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留翰苫,地道東北人止邮。 一個(gè)月前我還...
    沈念sama閱讀 46,598評(píng)論 2 362
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像奏窑,于是被迫代替她去往敵國(guó)和親导披。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,697評(píng)論 2 351

推薦閱讀更多精彩內(nèi)容