Vue雙向繫結原理及vue cli

2021-09-21 00:25:56 字數 1992 閱讀 3133

vue.js介紹

1. vue.js的mvvm框架

2. 什麼是vue.js

vue.js是乙個輕量級的mvvm框架

中文官網:

3. 對比react、angular

vue.js更輕量級,gzip只有20k

vue.js更容易上手,學習曲線平穩

吸取兩家之長,借鑑了angular的指令和react的指令化

4. vue.js的核心思想

(1)資料驅動

沒有mvvm框架,需要手動更改dom

在vue.js裡,你只需要改變資料,vue.js通過directives指令對dom做一層封裝,當資料發生變化,通知指令去修改對應的dom

vue.js還會對檢視做一些監聽,當我們修改檢視的時候,vue.js監聽到這些變化,從而改變資料,這樣就實現了資料的雙向繫結

(2)元件化

擴充套件html元素,封裝可重用的**

vue-cli 使用

1. vue-cli安裝

依賴環境:node.js

# 檢查node是否安裝

$ node -v

# 全域性安裝vue-cli

$ sudo

npminstall -g vue-cli

2. 建立乙個vue專案
# vue-cli指南

$ vue -h

# 官方可用template

# browserify,browserify-******,pwa,******,webpack,webpack-******

$ vue list

# 生成腳手架

# usage: vue-init [project-name]

# create a new project with an official template

$ vue init webpack my-project

# create a new project straight from a github template

$ vue init username/repo my-project

# 執行服務

$ npm

install

$ npm run dev

3. 專案入口

從npm run dev入手,執行的指令碼在package.json的scripts.dev,該指令碼指向 build/webpack.dev.conf.js 配置檔案,檔案開頭宣告一些依賴,如merge是來合併配置檔案用的,utils是一些工具方法,basewebpackconfig是乙個webpack配置檔案,它是開發時的webpack配置檔案和執行時的webpack配置檔案所共享,htmlwebpackplugin是webpack提供的乙個操作html的外掛程式,從const basewebpackconfig = require('./webpack.base.conf')這行我們來到build/webpack.base.conf.js 這個檔案,publicpath是請求的靜態資源絕對路徑,對應到config/index.js 的assetspublicpath: '/',即斜線,filename就是它輸出的檔名稱,主要做了webpack基礎配置

vue雙向繫結原理及實現

資料雙向繫結原理簡單概括的話就是 view層影響model層是通過對 keyup 等事件的監聽。model層影響view層是通過object.defineproperty 方法劫持資料並結合發布訂閱者模式的方式來實現資料的雙向繫結。根據原理圖來介紹整個流程 1 首先使用object.definepr...

vue雙向繫結原理

大家知道vue的雙向繫結原理是利用object.defineproperty 這一方法,以下是我研究該方法的一些內容 語法 object.defineproperty obj,prop,descriptor descriptor是將被定義或修改的屬性描述符,而雙向繫結是利用get和set屬性描述符。...

Vue雙向繫結原理

vue實現資料雙向繫結的原理就是用object.defineproperty 重新定義 set方法 物件設定屬性值和 get方法 獲取屬性值的操縱來實現的 object.property 方法的解釋 object.property 引數1,引數2,引數3 返回值為該物件obj 其中引數1為該物件 o...