日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 前端技术 > vue >内容正文

vue

实现乞丐版vue

發(fā)布時間:2025/4/14 vue 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 实现乞丐版vue 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

由于工作中經(jīng)常使用vue,所以對它的內(nèi)部構(gòu)造非常著迷,一直想探究其究竟。也看了不少文章,無奈水平所限并不能吃透、看透。所以運(yùn)用目前自己所學(xué),寫了demo,本demo總共100行左右,實(shí)現(xiàn)v-model,v-bind,v-click等功能。

由于水平所限,本demo寫的不是很規(guī)范,考慮的不是很周全,程序設(shè)計不太合理。只能實(shí)現(xiàn)基本的功能,作為學(xué)習(xí)的一個記錄。還希望大神勿噴,歡迎批評指正。

第一次寫博客,語言組織能力有待加強(qiáng)。

?

1、HTML部分? 

<div id="app"><span style="display: inline-block" v-bind="num"></span><span style="display: block" v-bind="input"></span><span style="display: block" v-bind="test"></span><span style="display: block" v-bind="input2"></span><input style="display: block" type="text" v-model="input"><input style="display: block" type="text" v-model="test"><input style="display: block" type="text" v-model="input2"><button @click="handleClick">click</button> </div>

2、javascript部分

<script>function Vue (options) {this.initValue = Object.assign({},options.data)this.data = options.datathis.methods = options.methodsthis.el = document.getElementById(options.el)this.bindList = [] this._init(this.el) } Vue.prototype._init = function (d) { this.render(d.children) this.definedProprtyInt (this.data) } //遍歷dom樹 Vue.prototype.render =function (nodeList) { Array.prototype.forEach.call(nodeList,(item) => { let childNode = item.children let len = childNode.length //匹配v-model或者@model let model = item.getAttribute('v-model')||item.getAttribute('@model') let type = item.tagName.toLocaleLowerCase() if (model) { item.value = this.initValue[model] this.data[model] = "" if (type === 'input') { item.onkeyup = function (e) { this.data[model] = e.target.value }.bind(this) } } //匹配v-bind 并綁定相應(yīng)的值 let bind = item.getAttribute('v-bind')||item.getAttribute('@bind') if(bind && (bind in this.data)) { //收集依賴 item.innerHTML = this.initValue[bind] this.bindList.push({ key:bind, d:item }) } //匹配v-click或者@click let eventName = item.getAttribute('v-click')||item.getAttribute('@click') if(eventName) { item.onclick = function (e) { this.methods[eventName].bind(this.data)(e) }.bind(this) } if(len>0) { this.render(childNode) } },this) } Vue.prototype.definedProprtyInt = function (o){ let _this = this for(let key in o) { Object.defineProperty(o,key,{ set:function (v) { //在data中找到相應(yīng)的key渲染到對應(yīng)的頁面上 this.bindList.forEach((item) => { if(key == item.key) { item.d.innerHTML = v } }) _this.initValue[key] = v }.bind(this), get:function (v) { // console.log(_this.initValue[key]) return _this.initValue[key] }, }) } } new Vue({ el:"app", data:{ input:"input", test:"test", input2:"input2", num:1 }, methods:{ handleClick:function (e) { this.num ++ } } }) </script>

?

轉(zhuǎn)載于:https://www.cnblogs.com/muyu-Ting/p/9324259.html

《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的实现乞丐版vue的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 自拍偷拍999| 国产精品一区av | 亚洲伊人av| 丁香婷婷六月天 | 日本免费高清一区二区 | 视频1区 | 内射中出日韩无国产剧情 | 韩国甜性涩爱 | 91成人在线观看国产 | 国产私人影院 | 国产精品一区二区三区在线看 | av在线视 | 日韩中文字幕网站 | 日本人添下边视频免费 | 久久久久久免费毛片精品 | 一区二区三区四区影院 | 黄网站免费在线观看 | 69pao| 欧美bdsm调教视频 | av在线中文 | 亚欧成人 | 久久国语 | 一色桃子juy758在线播放 | 婷婷综合一区 | 日韩一级二级三级 | 色婷婷国产精品 | 午夜九九| 婷婷俺也去 | 日韩免费av一区二区 | 中文字幕第十一页 | 91成人在线免费 | 日本乱大交xxxx公交车 | 欧美性插动态图 | 人人妻人人澡人人爽精品欧美一区 | 日韩电影在线观看中文字幕 | 国产日韩欧美另类 | 日韩免费片 | 亚洲xx站 | 波多野结衣电影免费观看 | 九九热超碰 | 欧美14sex性hd摘花 | 河北彩花中文字幕 | 夜夜激情网 | 久久精品国产亚洲av高清色欲 | 亚洲8888| 五月激情视频 | 午夜寻花| 永久免费看片 | 三级在线国产 | 91成人毛片| 三级在线看中文字幕完整版 | 草草影院在线观看 | 人人爽爽人人 | 一区二区三区四区高清视频 | 成人一级片在线观看 | 97超级碰碰人妻中文字幕 | 无码少妇一级AV片在线观看 | 精品人妻一区二区三区久久夜夜嗨 | 麻豆chinese新婚xxx | 66av欧美| 最新地址在线观看 | 欧美高清一区二区三区四区 | 日韩七区 | 一区二区三区观看 | 日本成人免费在线视频 | 美女伊人网 | 国产亚洲精品久久久久四川人 | 成人在线免费视频播放 | 琪琪秋霞午夜被窝电影网 | 国外av网站 | 91色综合 | 亚洲欧美国产精品 | 无人在线观看高清视频 单曲 | 好吊色网站 | 偷拍亚洲色图 | 东北少妇不戴套对白第一次 | 毛片网站在线播放 | 精品国产大片大片大片 | 国产精品国产精品国产专区不片 | 日本美女动态图 | 亚洲人午夜精品 | 国产视频中文字幕 | 伊人99re | 精品久久久久久亚洲综合网站 | 亚色中文字幕 | 中文字幕在线乱 | 国内毛片毛片毛片毛片 | 日韩欧美视频免费观看 | 男女做网站 | 亚洲高清av在线 | 日韩 国产 欧美 | 国产精品69久久久久 | 男生插女生网站 | 国产精品88av | 日韩视频成人 | 成人免费a视频 | 国产精品久久久久久久久绿色 | 一二三区在线播放 | 91人人干 |