从零单排系列之写一个类vue框架(一)
栏目: JavaScript · 发布时间: 6年前
内容简介:因为我希望这是一个系列的文章,所以开始之前先简单说一下,我几乎没用过vue这个框架写过项目,所以文章中难免会有一些比较外行的说法。当然,我用过一些时间的angular,也曾经解决过一些同行们vue方面的问题。所以如果有人原因看的话,也不用担心我过于外行。就像前些日子看到
因为我希望这是一个系列的文章,所以开始之前先简单说一下,我几乎没用过vue这个框架写过项目,所以文章中难免会有一些比较外行的说法。当然,我用过一些时间的angular,也曾经解决过一些同行们vue方面的问题。所以如果有人原因看的话,也不用担心我过于外行。
就像前些日子看到 阮一峰老师
说的话,我觉得老师这里真的说出了很多技术人员的心声,这里借用一下。
“我的技术文章,主要用来整理我还不懂的知识。我只写那些我还没有完全掌握的东西,那些我精通的东西,往往没有动力写。炫耀从来不是我的动机,好奇才是。”
言归正传,我准备了一本书,里面由浅入深地介绍了vue的用法(听人说的,我边看边写)。
先整理vue用法,然后再整理自己的框架。
最基本用法
<div id='app'>
{{title}}
</div>
<script>
var app = new Vue({
el: '#app',
data: {
title: 'Hello World'
}
})
</script>
简单分析一下,{{}} 用来声明这是一个model,然后在js中定义这个model
因为涉及到正则以及dom树的一些解析及递归等,我先写点简单点的,不然看的人都跑了。
<script>
function Vue(obj) {
var app = document.querySelector(obj.el);
for(let i in obj.data) {
this[i] = obj.data[i];
}
var html = app.childNodes;
var that = this;
html.forEach(function(data) {
if(data.nodeName == '#text') {
data.data = data.data.replace(/\{\{([\s\S]+)\}\}/g, function(a, b){return that[b]})
}
})
}
</script>
<div id='app'>
这里是{{title}}
</div>
<script>
var app = new Vue({
el: '#app',
data: {
title: 'Hello World'
}
})
</script>
这段代码应该可以勉强应付上面的vue语句,当然vue肯定不会是这么实现的,因为这是一次性的。明天换个es6版本的写法。今天就先写到这里吧。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 从零单排系列之写一个类vue框架(二)
- 从零单排Java 8(2) —— Timestamp、String互转
- 从零单排Java 8(3) —— List结合Lambdas对排序的高级用法
- 基于Google MVVM框架的baseMVVM框架
- Spring 框架是怎么出生的(二):重构提炼出框架
- Spring 框架是怎么出生的(二):重构提炼出框架
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Introduction to Linear Optimization
Dimitris Bertsimas、John N. Tsitsiklis / Athena Scientific / 1997-02-01 / USD 89.00
"The true merit of this book, however, lies in its pedagogical qualities which are so impressive..." "Throughout the book, the authors make serious efforts to give geometric and intuitive explanations......一起来看看 《Introduction to Linear Optimization》 这本书的介绍吧!