Vuejs --01 起步

來源:互聯網
上載者:User

標籤:模板   java   解釋   react   log   hello   元素屬性   傳值   簡潔   

一、是什麼     1、是一套構建使用者介面的漸進式架構,Vue採用自底向上漸進式開發的設計          1.1     解釋:架構譬如angular,是強主張,如果用之---必須使用它的模組機制,必須使用它的依賴注入,必須使用它的特殊形式定義組件(此每個視圖架構都一樣,難以避免);架構比如react,侵入性看似沒有angular強,因為它是軟性侵入。               而Vue是漸進式,沒有強主張
你可以在原有大系統的上面,把一兩個組件改用它實現,當jQuery用;也可以整個用它全家桶開發,當Angular用;還可以用它的視圖,搭配你自己設計的整個下層用。你可以在底層資料邏輯的地方用OO和設計模式的那套理念,也可以函數式,都可以,它只是個輕量視圖而已,只做了自己該做的事,沒有做不該做的事,僅此而已。     ---摘自知乎徐飛
 二、聲明式渲染     1、Vue核心:採用簡潔的模板文法來聲明式地將資料渲染進DOM
<div id="app">     <p>{{message}}<p>     <p v-bind:title="messa">滑鼠懸浮時顯示title,此時title被Vue綁定了messa(v-表示他們是Vue提供的特殊屬性)</p></div> <script>     new Vue({         el: ‘#app‘,     //注意不能漏掉#         data: {               message: ‘hello‘,          //方式一:元素內資料渲染               messa: ‘懸浮顯示title‘     //方式二:元素屬性資料渲染(區於模板渲染(     <input value="{{message}}" />    ),屬性綁定必須用v-bind:   (     <input v-bind:value="message" />     ))         }      });</script>
 三、條件與迴圈
<div id="app1">     <p v-if="seen">根據if是否為真判斷是否可見,或者說是否運行此行代碼</p></div> <script>     new Vue({          el: ‘#app1‘,          data:{               seen: true          }     });</script>
 
<div id="app1">     <ul>       <li v-for="key in list">         {{key.text}}       </li>     </ul></div> <script>     new Vue({          el: ‘#app1‘,          data:{               list: [                    {text: ‘nihao‘},                    {text: ‘wohao‘},                    {text: ‘dajiahao‘}               ]          }     });</script>
 四、處理使用者輸入     1、事件
<div id="app1">     <input type="text" name="va" v-bind:value="message">     <a href="javascript:;" v-on:click="btnEvent">綁定點擊事件</a></div> <script>    new Vue({        el: ‘#app1‘,        data: {            message: ‘你好‘        },        methods: {            btnEvent: function() {                this.message = ‘點擊之後,message值改變‘            }        }    });</script>  
      2、表單輸入和應用狀態之間的雙向繫結
<div id="app1">     <input type="text" name="va" v-model="message">     <p>     {{message}}     </p></div> <script>     new Vue({          el: ‘#app1‘,          data:{              message: ‘你好‘          }     }); </script>
 五、組件化應用構建
//自訂群組建 ‘item-list‘ ,並定義該組件包含:li模板(內容資料是自訂屬性值中傳過來的) + 自訂屬性props(包含屬性名稱item(屬性值從父級中通過v-bind傳過來))---》完成了從父級中傳值給子級即:自訂群組件)<div id="app2">  <ul>    <item-list v-for="key in dataList" v-bind:item="key" v-bind:key="key.id">     </item-list>  </ul></div> <script>    Vue.component(‘item-list‘, {        props: [‘item‘],        template: ‘<li>{{item.text}}</li>‘    });    var app2 = new Vue({        el: ‘#app2‘,        data: {            dataList: [{                id: 0,                text: ‘你好‘            }, {                id: 1,                text: ‘我好‘            }, {                id: 2,                text: ‘大家好‘            }]        }    }); </script>
          

Vuejs --01 起步

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.