09-Vue基礎(chǔ)1

一、Vue官網(wǎng)

Vue中文網(wǎng)

二、Vue簡(jiǎn)介

Vue是一個(gè)前端的雙向綁定類(lèi)的框架,新的Vue版本參考了React的部分設(shè)計(jì),當(dāng)然也有自己獨(dú)特的地方,比如Vue的單文件組件開(kāi)發(fā)方式都很有創(chuàng)新,另外Vue自身的一些綁定的語(yǔ)法、用法等都非常精煉,很容易上手,而且第三方的插件都非常豐富,社區(qū)非?;钴S,最新的文檔都有中文版本。而且Vue配合官方的和第三方的庫(kù)可以實(shí)現(xiàn)單文件的組件化開(kāi)發(fā)、SPA等現(xiàn)代化前端開(kāi)發(fā)。

  - 是一個(gè)輕量級(jí)MVVM框架(大小只有18KB)
  - 數(shù)據(jù)驅(qū)動(dòng)+組件化的前端開(kāi)發(fā)
  - 社區(qū)完善

三、MVVM框架

  • MVVM框架好處

    - 針對(duì)具有復(fù)雜交互邏輯的前端應(yīng)用
    - 提供的結(jié)構(gòu)抽象
    - 主要目的是為了解決應(yīng)用程序展示結(jié)構(gòu)、業(yè)務(wù)邏輯之間的緊耦合關(guān)系
    - 通過(guò)ajax數(shù)據(jù)持久化,保證前端用戶(hù)體驗(yàn)(部分異步刷新)
    
    MVVM框架
  • MVC組成

    - 模型(Model): 處理數(shù)據(jù)和業(yè)務(wù)邏輯
    - 視圖(View): 向用戶(hù)展示數(shù)據(jù)的界面
    - 控制器(Controller): 組織調(diào)度相應(yīng)的處理模型
    

四、Vue入門(mén)

Vue 可以直接把它當(dāng)做一個(gè)js庫(kù)使用,可以很簡(jiǎn)單的接入到你的項(xiàng)目中,或者你只需要使用雙向數(shù)據(jù)綁定。

  需求: 網(wǎng)頁(yè)中有個(gè)div標(biāo)簽,而需要有json對(duì)象存儲(chǔ)數(shù)據(jù),把json對(duì)象上的數(shù)據(jù)放到div。

  - 在頁(yè)面中引入Vue庫(kù)
  <script src="https://unpkg.com/vue/dist/vue.js"></script>

  - 在頁(yè)面中div標(biāo)簽添加一個(gè)id,例如app
    <div id='app'></app>

  - 創(chuàng)建Vue的對(duì)象,并把數(shù)據(jù)綁定到上面創(chuàng)建好的div上去
<html>
    <head>
        <meta charset="utf8"/>
        <title>hello vue</title>
        <!--1、引入Vue庫(kù)-->
        <script src="https://unpkg.com/vue/dist/vue.js"></script>
    </head>

    <body>
        <!-- 2、創(chuàng)建一個(gè)Div -->
        <div id="app">
            <!--Vue的模板的綁定數(shù)據(jù)的方法,可以用兩對(duì)花括號(hào)進(jìn)行綁定Vue中的數(shù)據(jù)對(duì)象的屬性 -->
            {{message}}
        </div>
    </body>

    <!-- 3、創(chuàng)建Vue的對(duì)象,并把數(shù)據(jù)綁定到上面創(chuàng)建好的div上去 -->
    <script>
        // 創(chuàng)建Vue對(duì)象(Vue的核心對(duì)象)
        var app = new Vue({
            el: '#app', // el屬性:把當(dāng)前Vue對(duì)象掛載到 div標(biāo)簽上,#app是id選擇器
            data: {     // data: 是Vue對(duì)象中綁定的數(shù)據(jù)
                message: 'hello Vue!'       // message 自定義的數(shù)據(jù)
            }
        });
    </script>
</html>

五、Vue核心思想

  • 數(shù)據(jù)驅(qū)動(dòng)(即是雙向的數(shù)據(jù)綁定)
    DOM是數(shù)據(jù)的一種自然映射。雙向是指:HTML標(biāo)簽數(shù)據(jù) 綁定到 Vue對(duì)象,另外反方向數(shù)據(jù)也是綁定的。Vue對(duì)象的改變會(huì)直接影響到HTML的標(biāo)簽的變化,而且標(biāo)簽的變化也會(huì)反過(guò)來(lái)影響Vue對(duì)象的屬性的變化。之前Dom驅(qū)動(dòng)的開(kāi)發(fā)方式尤其是以jQuery為主的開(kāi)發(fā)時(shí)代,都是dom變化后,觸發(fā)js事件,然后在事件中通過(guò)js代碼取得標(biāo)簽的變化,再跟后臺(tái)進(jìn)行交互,然后根據(jù)后臺(tái)返回的結(jié)果再更新HTML標(biāo)簽,異常的繁瑣。有了Vue這種雙向綁定,讓開(kāi)發(fā)人員只需要關(guān)心json數(shù)據(jù)的變化即可,Vue自動(dòng)映射到HTML上,而且HTML的變化也會(huì)映射回js對(duì)象上,開(kāi)發(fā)方式直接變革成了前端由數(shù)據(jù)驅(qū)動(dòng)的開(kāi)發(fā)時(shí)代。


    數(shù)據(jù)驅(qū)動(dòng)
  • 組件化
    擴(kuò)展HTML元素,封裝可重用的代碼。

    組件設(shè)計(jì)原則:
        - 頁(yè)面上每個(gè)獨(dú)立的可視/可交互區(qū)域視為一個(gè)組件(例如頭部尾部);
        - 每個(gè)組件對(duì)應(yīng)一個(gè)工程目錄,組件所需要的各種資源在該目錄下就近維護(hù);
        - 頁(yè)面不過(guò)是組件的容器,組件可以嵌套自由組合,形成完整的頁(yè)面;
    
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 今天是2019年1月5日。下午,珠心算學(xué)校舉行了二階段總結(jié)會(huì)。總結(jié)會(huì)分為三個(gè)環(huán)節(jié)進(jìn)行:第一個(gè)環(huán)節(jié)是成果演示,第二個(gè)...
    塑泓閱讀 2,075評(píng)論 56 80
  • 因?yàn)樵凇皭?ài)的特殊關(guān)系”中,愛(ài)的真諦已經(jīng)蒙塵,人們不過(guò)是想用它來(lái)制衡心頭之恨,并無(wú)意放下深藏的恨意?!镀孥E課程》...
    陌山心理閱讀 802評(píng)論 0 0
  • 用風(fēng)雅的態(tài)度看世界,然后用痞子的方式過(guò)生活 ——其實(shí)我生活的方式,無(wú)非是像一個(gè)優(yōu)雅的瘋子。 標(biāo)題的一句話其實(shí)...
    一葉未離閱讀 927評(píng)論 0 0

友情鏈接更多精彩內(nèi)容