day27總結(jié):Vue基礎(chǔ)(2019-05-23)

Vue基礎(chǔ)

  • Vue主要包含兩個(gè)部分:Vue對(duì)象和指令
  • 導(dǎo)入標(biāo)簽
    <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>

1. Vue對(duì)象

            var 對(duì)象名 = new Vue({
                el:關(guān)聯(lián)對(duì)象的選擇器,
                data: 數(shù)據(jù)對(duì)象(屬性和值自己決定),
                methods:方法對(duì)象(屬性對(duì)應(yīng)的值是方法)
            })

2. 設(shè)置標(biāo)簽內(nèi)容

  • {{Vue屬性名}}
        <div id="app-2">
            <p>{{pText}}</p>
            <a href="">{{aTitle}}</a>
            <h1>{{title}}</h1>
        </div>
        
        <script type="text/javascript">
            var app2 = new Vue({
                el:'#app-2',
                data:{
                    pText: '我是段落',
                    aTitle: '百度一下',
                    title: '我是標(biāo)題1'
                }
            })
        </script>

3. 設(shè)置標(biāo)簽屬性值

  • v-bind:屬性='Vue屬性名'
        <div id="app-3">
            <img v-bind:src="imageUrl" v-bind:title="name"/>
        </div>
        
        <script type="text/javascript">
            var app3 = new Vue({
                el:'#app-3',
                data:{
                    imageUrl:'img/a1.jpg',
                    name: '路飛'
                }
            })
            
        </script>

4. if語(yǔ)句

  • v-if='條件語(yǔ)句(Vue屬性名)':如果條件語(yǔ)句的結(jié)果是true,標(biāo)簽就顯示,否則不顯示(條件語(yǔ)句需要是與Vue屬性相關(guān)聯(lián)的語(yǔ)句)
        <div id="app-4">
            <!--如果message的值是空就隱藏树枫,否則顯示-->
            <p v-if="message">內(nèi)容是:{{message}}</p>
            
            <!--如果message的值是123就顯示堕绩,否則隱藏-->
            <p v-if="message=='123'">內(nèi)容是:{{message}}</p>
        </div>
        <script type="text/javascript">
            var app4 = new Vue({
                el:'#app-4',
                data:{
                    message: 'Vue.js'
                }
            })
        </script>

5. 循環(huán)結(jié)構(gòu)

  • v-for="變量 in 數(shù)組屬性"
        <div id="app-5">
            <ul>
                <li v-for="mesage in names"><img v-bind:src="mesage['img']"/>{{mesage.name}}</li>
            </ul>
        </div>
        <script type="text/javascript">
            var app5 = new Vue({
                el:'#app-5',
                data:{
                    names:[
                        {img:'img/a1.jpg', name:'python'},
                        {img:'img/a2.jpg', name:'前端H5'},
                        {img:'img/a3.jpg', name:'java大數(shù)據(jù)'},
                        {img:'img/luffy.jpg', name:'物聯(lián)網(wǎng)'}
                    ]
                }
            })
        </script>

6. 事件綁定

  • v-on:事件名='函數(shù)名'
        <div id="app-6">
            <p>{{num}}</p>
            <button v-on:click="addAction">加1</button>
        </div>
        <script type="text/javascript">
            var app6 = new Vue({
                el:'#app-6',
                data:{
                    num: 0
                },
                methods:{
                    addAction: function(){
                        this.num ++
                    }
                }
                
            })
        </script>

7. input標(biāo)簽內(nèi)容和屬性雙向綁定

  • v-model="Vue對(duì)象屬性名"
        <div id="app-7">
            <p>{{message}}</p>
            <input v-model="message" />
        </div>
        <script type="text/javascript">
            var app7 = new Vue({
                el: '#app-7',
                data:{
                    message: '你好'
                }
            })
        </script>

8. stop修飾符

  • v-on:事件名.stop:捕獲指定標(biāo)簽上的指定事件(阻止事件傳遞給父標(biāo)簽)
        <div id="div1" v-on:click.stop="action1">
            <div id="div2" v-on:click.stop="action2">
                <div id="div3" v-on:click.stop="action3">
                    
                </div>
            </div>
        </div>
        
        <script type="text/javascript">
            
            var app1 = new Vue({
                el:'#div1',
                methods:{
                    action1:function(){
                        alert('div1被點(diǎn)擊')
                    },
                    action2:function(){
                        alert('div2被點(diǎn)擊')
                    },
                    action3:function(){
                        alert('div3被點(diǎn)擊')
                    }
                }
            })
            
        </script>

9. 表單提交阻止頁(yè)面重載

  • form標(biāo)簽中設(shè)置:v-on:submit.prevent='方法屬性名'
        <form action="" method="get" id="app-2" v-on:submit.prevent="submitAction">
            <input type="" name="username" id="" value="" />
            <input type="password" name="password" id="" value="" />
            <input type="radio" name="sex" id="" value="" />男
            <input type="radio" name="sex" id="" value="" />女
            <input type="submit" value="提交"/>
        </form>
        <script type="text/javascript">
            var app2 = new Vue({
                el:'#app-2',
                methods:{
                    submitAction:function(){
                        alert('已經(jīng)提交')
                    }
                }
            })
        </script>

10. Vue加載異步數(shù)據(jù)

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <script type="text/javascript" src="js/jquery.min.js"></script>
        <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    </head>
    <body>
        <div id="app-1">
            <h1>{{name}}</h1>
            <p v-for="data in datalist" v-if="datalist">{{data.title}}</p>
            
        </div>
        
        
        <!--1.將請(qǐng)求到的數(shù)據(jù)通過(guò)Vue加載到網(wǎng)頁(yè)中
            1)
        -->
        <script type="text/javascript">
            //0)創(chuàng)建Vue對(duì)象
            var app1 = new Vue({
                el:'#app-1',
                data: {
                    datalist: [],
                    name: 'abc'
                }
            })
            
            
            //1)通過(guò)接口請(qǐng)求
            $.ajax({
                type:"get",
                url:"http://rap2api.taobao.org/app/mock/177073/houseList",
                async:true,
                success:function(result){
                    //2)數(shù)據(jù)請(qǐng)求成功將請(qǐng)求到的數(shù)據(jù)關(guān)聯(lián)到Vue對(duì)象
                    console.log(result)
                    app1.datalist = result.datalist
                
                }
            });
        </script>
        
    </body>
</html>

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末财松,一起剝皮案震驚了整個(gè)濱河市堪伍,隨后出現(xiàn)的幾起案子靡砌,更是在濱河造成了極大的恐慌驼仪,老刑警劉巖掸犬,帶你破解...
    沈念sama閱讀 207,248評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異绪爸,居然都是意外死亡湾碎,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門奠货,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)介褥,“玉大人,你說(shuō)我怎么就攤上這事递惋∪崽希” “怎么了?”我有些...
    開封第一講書人閱讀 153,443評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵萍虽,是天一觀的道長(zhǎng)睛廊。 經(jīng)常有香客問(wèn)我,道長(zhǎng)贩挣,這世上最難降的妖魔是什么喉前? 我笑而不...
    開封第一講書人閱讀 55,475評(píng)論 1 279
  • 正文 為了忘掉前任没酣,我火速辦了婚禮,結(jié)果婚禮上卵迂,老公的妹妹穿的比我還像新娘裕便。我一直安慰自己,他們只是感情好见咒,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,458評(píng)論 5 374
  • 文/花漫 我一把揭開白布偿衰。 她就那樣靜靜地躺著,像睡著了一般改览。 火紅的嫁衣襯著肌膚如雪下翎。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,185評(píng)論 1 284
  • 那天宝当,我揣著相機(jī)與錄音视事,去河邊找鬼。 笑死庆揩,一個(gè)胖子當(dāng)著我的面吹牛俐东,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播订晌,決...
    沈念sama閱讀 38,451評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼虏辫,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了锈拨?” 一聲冷哼從身側(cè)響起砌庄,我...
    開封第一講書人閱讀 37,112評(píng)論 0 261
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎奕枢,沒(méi)想到半個(gè)月后娄昆,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,609評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡验辞,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,083評(píng)論 2 325
  • 正文 我和宋清朗相戀三年稿黄,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片跌造。...
    茶點(diǎn)故事閱讀 38,163評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡杆怕,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出壳贪,到底是詐尸還是另有隱情陵珍,我是刑警寧澤,帶...
    沈念sama閱讀 33,803評(píng)論 4 323
  • 正文 年R本政府宣布违施,位于F島的核電站互纯,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏磕蒲。R本人自食惡果不足惜留潦,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,357評(píng)論 3 307
  • 文/蒙蒙 一只盹、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧兔院,春花似錦殖卑、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至十偶,卻和暖如春菩鲜,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背惦积。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工接校, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人荣刑。 一個(gè)月前我還...
    沈念sama閱讀 45,636評(píng)論 2 355
  • 正文 我出身青樓馅笙,卻偏偏與公主長(zhǎng)得像伦乔,于是被迫代替她去往敵國(guó)和親厉亏。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,925評(píng)論 2 344