RubyLouvre / jsbook

一些章节
275 stars 84 forks source link

第十五章 前端模板 #200

Closed Zjingwen closed 7 years ago

Zjingwen commented 7 years ago

原文:套页面的过程实际就是将静态页面变成切割成一块块,每一块都是一个php,jsp或vm文件,它们是后端模板引擎的处理对象!

建议:套页面的过程实际就是将静态页面切割成若干功能块,每一块都是一个php,jsp或vm文件,它们是后端模板引擎的处理对象!


原文:

 var data = {
     name: "司徒正美",
     age: 20
 }

大抵是这样

var body = '你好,我的名字叫'+ data.name+ ', 今年已经 '+data.info.age+ '岁了'
var render = new Function('data', 'return '+ body)

建议:

 var data = {
     name: "司徒正美",
     info:{
         age: 20
     } 
 }

因为你接下来所有的例子都是,data.info.age


原文:哪个变量发生改动,那么只有涉及变量的属性值,nodeValue才会改会。于是就没有原来静态模板的三大副作用,性能上也大为提升。

建议:哪个变量发生改动,那么只有涉及变量的属性值,nodeValue才会改变。于是就没有原来静态模板的三大副作用,性能上也大为提升。


原文:因此我们可以说,动态模板就是观察者模式的架设!就像国家那样,通过电视杆与电线将农村联结在一起。

建议:因此我们可以说,动态模板就是观察者模式的架设!就像国家那样,通过电线杆与电线将农村连接在一起。


原文:指令是什么呢?一个标记,标记它会对当前元素进行怎么样的操作。通常指令是以元素属性的形式存在,但angular存在多种指令形式,tagName, comment, attribute, className与双花括号形式的插值。

建议:指令是什么呢?一个标记。标记它会对当前元素进行怎么样的操作呢?通常指令是以元素属性的形式存在,但angular存在多种指令形式,tagName, comment, attribute, className与双花括号形式的插值。


原文:MVVM框架通常有一个扫描过程,将所有它感兴趣的元素进行收集。这个扫描与收集后面会说。而这些感兴趣的元素都是带有指令的。

建议:MVVM框架通常有一个扫描过程,将所有它感兴趣的元素进行收集。这个扫描与收集后面会说。而这些它感兴趣的元素都是带有指令的。


原文:当一次数据发生变动时,会进行新值与旧值比较,决定它是否进度入刷新函数这一步。

建议:当一次数据发生变动时,会进行新值与旧值比较,决定它是否进入刷新函数这一步。


原文:

  1. 干掉所有正则,这个有好用的正则
  2. 干掉所有字符串,这个也有正则可用,但不太好用,建议实现一个方法来处理
  3. 干掉所有对象的子属性
  4. 干掉所有关键字与保留字
  5. 干掉所有操作符与数字
  6. 去掉与利用hasOwnProperty进行过滤变量与局部变量(就是之前说的, i, el问题)

建议:

  1. 干掉所有正则字面量,这个最好用的正则(我对这段话的理解是这样的)

原文:动态依赖收集,而要对求值函数进行深改造,要执行一下求值函数,让里面前端的赋值语句被执行,从而触发访问器属性的getter方法。

建议:动态依赖收集,要对求值函数进行深改造。要执行一下求值函数,让里面前端的赋值语句被执行,从而触发访问器属性的getter方法。


原文:刷新函数是内置的视图刷新方法。有多少种指令,就有多少种方法。换言之,这一节主要能出通用的指令类型。

建议:刷新函数是内置的视图刷新方法。有多少种指令,就有多少种方法。换言之,这一节主要介绍通用的指令类型。


原文:在IE6-8下,文本节点与注释节点是不能添加自定义属性,这就是avalon不采用此方的缘故。

建议:在IE6-8下,文本节点与注释节点是不能添加自定义属性,这就是avalon不采用此方案的缘故。


原文:因此我们可以抢选在上面把binding.expr放到上面去。这样就实现绑定一次事件的效果。

建议:因此我们可以抢先在上面把binding.expr放到上面去。这样就实现绑定一次事件的效果。


原文:由于元素节点有七重原型链,每重都有占有大量属性名与方法名,中奖机率比六合彩高多了,因此此方案早早出局。

建议:由于元素节点有七重原型链,每重都占有大量属性名与方法名,中奖机率比六合彩高多了,因此此方案早早出局。


原文: image

建议:watch的形态改一下?


RubyLouvre commented 7 years ago

好了,谢谢