添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

##Public API

文件组织通过CommonJS方式,对于浏览器,通过spm可以打包为cmd模块。

var Velocity = require('velocityjs');
//1. 直接解析
Velocity.render('string of velocity', context, macros);
//2. 使用parse和Compile
var Compile = Velocity.Compile;
var asts = Velocity.parse('string of velocity');
(new Compile(asts)).render(context, macros);

####context

context 是一个对象,可以为空,执行中 $foo.bar ,访问路径是 context.foo.bar context 的属性可以是函数,和vm中定义保持一致。

context中得函数,有一个固定的 eval 方法,可以用来运算vm语法字符串,比如webx对应的 $control.setTemplate 实现

##Syntax

具体语法请访问官网文档: velocity user guide

###Directives

Directives支持 set , foreach , if|else|elseif , macro , break 。不 支持有, stop , evaluate , define , parse 。不过可以通过context来实现,比如 parse 实现

###macro与parse

宏分为系统的宏,比如 parse, include ,和用户自定义宏,通过 #macro 在vm中定义,此 外可以使用自定义的js函数替代在vm中定义。对于系统宏和自定义宏,不做区分,对于 #parse #include 的调用,可以使用自定义函数来执行,可以参考测试用例中self defined macro部分。

##Questions

提问有几种方式

  • 新建 issue
  • 邮件到eward.song at gmail.com
  • 阿里内部员工,可以通过hanwen.sah搜到我的旺旺
  • 推荐一下沉鱼写的 velocity

    ##License