摘要:包含一個(gè)比較完整的基本項(xiàng)目,打包測試代碼校驗(yàn)源碼分析特性雙向綁定計(jì)算屬性事件支持監(jiān)測生命周期函數(shù)自定義指令根節(jié)點(diǎn)選擇器或是根節(jié)點(diǎn)元素。
re-vue
rewrite vue.js.
包含一個(gè)比較完整的基本項(xiàng)目,webpack打包、mocha測試、eslint代碼校驗(yàn).
online demo
源碼分析:https://github.com/xiaofuzi/deep-in-vue
特性雙向綁定
計(jì)算屬性
事件支持
watch監(jiān)測
生命周期函數(shù)
自定義指令
Usageexample:
var mvvm; var opts = { el: "#app", data: { isShow: false, counter: 1, hello: "ahahah!", info: { age: 18 }, person: { weight: 20, height: 170 } }, computed: { wellcome () { return {text: this.hello + "---" + this.info.age}; } }, methods: { add: function () { this.counter += 1; this.info.age += 1; }, toggle: function () { this.isShow = !this.isShow; } }, watch: { counter (val) { console.log("counter: ", val); }, info (info) { console.log("info: ", info); }, "info.age" () { }, wellcome () { console.log("wellcome: ", this.wellcome); } }, ready () { let self = this; self.hello = "Ready, go!"; setTimeout(function () { self.hello = "Done!"; }, 1000) } } TinyVue.$directive("visible", function (value) { this.el.style.visibility = value ? "visible" : "hidden"; }) mvvm = new TinyVue(opts);
el
Type: String | Node
根節(jié)點(diǎn)選擇器或是根節(jié)點(diǎn)dom元素。
data
Type: Object
初始化響應(yīng)式數(shù)據(jù)模型
computed
Type: Object
計(jì)算屬性,每一個(gè)元素對應(yīng)一個(gè)函數(shù)
注:
* computed屬性依賴于data中的響應(yīng)式數(shù)據(jù) * computed屬性可依賴computed屬性 * computed禁止賦值操作
methods
Type: Object
每一個(gè)元素對應(yīng)一個(gè)函數(shù),支持響應(yīng)式替換
watch
Type: Object
監(jiān)測對象,監(jiān)測對應(yīng)的響應(yīng)式數(shù)據(jù),當(dāng)數(shù)據(jù)發(fā)生更改時(shí)執(zhí)行回調(diào).
$watch
Type: Function
監(jiān)測某一數(shù)據(jù)的響應(yīng)式變化
如:
var vm = new TinyVue({ data: { info: { age: 18 } } }); vm.$watch("info", function (info) { }); vm.$watch("info.age", function (age) { })
$directive
Type: Function
自定義指令
如:
vm.$directive("text", function (text) { this.el.textContent = text; });
beforeCompiler
生命周期函數(shù),編譯前執(zhí)行
ready
生命周期函數(shù),渲染完畢后執(zhí)行
Installnpm install tiny-vue --save
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/80956.html
摘要:不多廢話,先說結(jié)論小程序組件寫法這里就不再介紹。在官方文檔中,我們可以看到使用構(gòu)造器構(gòu)造頁面事實(shí)上,小程序的頁面也可以視為自定義組件。經(jīng)過一番測試,得出結(jié)果為為了簡便。畢竟官方標(biāo)準(zhǔn),不用擔(dān)心其他一系列后續(xù)問題。 在開發(fā)小程序的時(shí)候,我們總是期望用以往的技術(shù)規(guī)范和語法特點(diǎn)來書寫當(dāng)前的小程序,所以才會(huì)有各色的小程序框架,例如 mpvue、taro 等這些編譯型框架。當(dāng)然這些框架本身對于新開...
摘要:供用戶在相應(yīng)的階段對其進(jìn)行操作。我們像下面這樣使用這個(gè)指令大多數(shù)情況下,我們只需要使用與鉤子函數(shù)。里提供了函數(shù)的簡寫形式鉤子函數(shù)有兩個(gè)常用的參數(shù)和。其他用法與全局自定義指令一致。 一、vue生命周期 vue實(shí)例從創(chuàng)建到銷毀的過程,稱為生命周期,共有八個(gè)階段。 這八個(gè)階段里分別有一個(gè)叫做鉤子函數(shù)的實(shí)例選項(xiàng)。供用戶在相應(yīng)的階段對其進(jìn)行操作。 beforeCreate(){ //組件實(shí)例剛...
摘要:供用戶在相應(yīng)的階段對其進(jìn)行操作。我們像下面這樣使用這個(gè)指令大多數(shù)情況下,我們只需要使用與鉤子函數(shù)。里提供了函數(shù)的簡寫形式鉤子函數(shù)有兩個(gè)常用的參數(shù)和。其他用法與全局自定義指令一致。 一、vue生命周期 vue實(shí)例從創(chuàng)建到銷毀的過程,稱為生命周期,共有八個(gè)階段。 這八個(gè)階段里分別有一個(gè)叫做鉤子函數(shù)的實(shí)例選項(xiàng)。供用戶在相應(yīng)的階段對其進(jìn)行操作。 beforeCreate(){ //組件實(shí)例剛...
摘要:供用戶在相應(yīng)的階段對其進(jìn)行操作。我們像下面這樣使用這個(gè)指令大多數(shù)情況下,我們只需要使用與鉤子函數(shù)。里提供了函數(shù)的簡寫形式鉤子函數(shù)有兩個(gè)常用的參數(shù)和。其他用法與全局自定義指令一致。 一、vue生命周期 vue實(shí)例從創(chuàng)建到銷毀的過程,稱為生命周期,共有八個(gè)階段。 這八個(gè)階段里分別有一個(gè)叫做鉤子函數(shù)的實(shí)例選項(xiàng)。供用戶在相應(yīng)的階段對其進(jìn)行操作。 beforeCreate(){ //組件實(shí)例剛...
摘要:響應(yīng)式原理判斷該實(shí)例是否存在進(jìn)行調(diào)用相應(yīng)的初始化函數(shù)與主要工作是調(diào)用給屬性分別掛載觸發(fā)該鉤子時(shí),會(huì)將當(dāng)前屬性的實(shí)例推入當(dāng)前的也就是當(dāng)前的中即它訂閱的依賴,下文會(huì)講到。 vue響應(yīng)式原理 initState new Vue() => _init() => initState: function initState (vm: Component) { vm._watchers = []...
閱讀 1914·2021-09-23 11:21
閱讀 1701·2019-08-29 17:27
閱讀 1059·2019-08-29 17:03
閱讀 728·2019-08-29 15:07
閱讀 1922·2019-08-29 11:13
閱讀 2381·2019-08-26 12:14
閱讀 922·2019-08-26 11:52
閱讀 1733·2019-08-23 17:09