弦调弦
这个软件包提供了一个共用的系统,可以跨出Budibase Builder,客户端和服务器的字符串诱导. 通过使用 处理栏 胡子的扩展 它能够执行逻辑。 我们还通过使用扩展了基础的 Handlebars 功能 通过下列方式提供的一组帮助: 手柄栏帮助器 软件包.
我们没有实施所有由帮助者包提供的帮助者,因为其中一些提供了功能 我们觉得没有好处 已实施下列帮助者汇编:
- 数学 - 一套有用的帮助者
执行与数字有关的逻辑,例如:.
avg, (中文(简体) ),add, (中文(简体) ),abs诸如来. - 阵列 - 一些非常特别的帮手
用于数组,例如用于自动化。 帮助者喜欢
first, (中文(简体) ),last, (中文(简体) ),after财务报告和审定财务报表join可用于获得特定部分的数组或将它们变成字符串. - 数目 - 不像数学帮手
用于将数字转换成有用的显示格式,例如.
bytes, (中文(简体) ),addCommas财务报告和审定财务报表toPrecision。 。 。 . - 網址 - 处理URL的非常具体的助手,
例如
encodeURI, (中文(简体) ),escape, (中文(简体) ),stripQueryString财务报告和审定财务报表stripProtocol。这些主要有用 用于建立特定的URL,作为自动化的一部分. - 字符串 - 这些帮手对建筑很有用
字符串和准备用于显示,例如:.
append, (中文(简体) ),camelcase, (中文(简体) ),capitalize财务报告和审定财务报表ellipsis。 。 。 . - 比较 - 这些助手主要为:
特定条件满足时的构造字符串,例如
and, (中文(简体) ),or, (中文(简体) ),gt, (中文(简体) ),lt, (中文(简体) ),not诸如来. 这是非常 大量帮助者,但大多符合一组逻辑操作员的期望. - 对象 - 分析对象的有用操作员,以及 把它们转换成JSON字符串.
- 缩写 - 允许对字符串进行regex测试 可用于有条件的声明.
- 日期 - 最后但肯定并非最不重要的是一个基于时间的约会助手,它可以
格式化 ISO/ timestamp 基于时间戳的日期为人可以读取的东西。 这方面的一个例子是:
{{date dateProperty "DD-MM-YYYY"}}。 。 。 .
日期格式化
此软件包使用标准方法格式化日期时间,使用以下语法:
| 投入 | 示例 | 说明 |
|---|---|---|
| 哟 | 2014 (中文(简体) ) | 4到2位数的年份。 注:在严格模式下只能解析出4位数 |
| 哟 | 页:1 | 2个数字年份 |
| Y | -25号 | 数字和签名年份 |
| Q 问 | 1.4 信息技术 | 年四时. 规定每个月到第一个月的季度. |
| 分钟 | 1.12 (中文(简体) ) | 月数 |
| 毫米毫米毫米 | 杨.. 12月(半天) | 以 moment 设置的地语名称 。 locale () |
| DD 数据交换 | 1.31 联合国 | 月数 |
| 执行 | 第1次 第31次会议 | 月日为正数 |
| DDD 数据文件 | 1.365 (韩语) | 年度天数 |
| 页:1 | 1410715640.579 (中文(简体) ) | 无九时戳 |
| 页:1 | 1410715640579 (中文(简体) ) | 解开 ms 时间戳 |
模板格式
调温系统主要有两种方法,第一种方法与调温系统非常相似 由Mustache制作 - 单一声明:
Hello I'm building a {{uppercase adjective}} string with Handlebars!
在上述说明中,提供了以下背景: {adjective: "cool"} 将生成一个字符串 Hello I'm building a COOL string with Handlebars!。 。 。 .
这里我们可以看到一个实例,说明可以使用字符串帮助者来制作一个字符串,而这正是我们需要的. 这些声明相对而言是:
简单; 也可以堆栈帮助者 : {{ uppercase (remove string "bad") }} 使用括号.
另一种用调温系统可以作出的语句是有条件的语句,这种语句看起来是:
Hello I'm building a {{ #gte score "50" }}Great{{ else }}Bad{{ /gte }} string with Handlebars!
在这个字符串中,可以看到字符串 Great 或者说 Bad 将视
score 上下文变量。 比较、 字符串和数组帮助都提供了一些可以使用的有条件操作符
这边 也会有一些运算符会使用非常相似的语法来构建,但会生成一个
迭接操作,像每个操作一样 -- 例如: forEach 阵列帮助器.
使用量
这个调温套件的使用是通过套件提供的主要功能之一——这些功能是: 内容如下:
processString- 说吧async (string, object)- 给出模板字符串和上下文对象,这将构建字符串 使用我们的预处理器,后处理器和手提栏.processObject- 说吧async (object, object)- 行使由下列人员提供的功能:processString用于任意字符串 在给定对象内。 这将深深地重复到所提供的物体中,因此对于非常大的物体来说可能很慢.processStringSync- 说吧(string, object)- 减少同步字符串的功能处理,例如 由节点提供的函数(例如).readdirSync(中文(简体) )processObjectSync- 说吧(object, object)- 就像同步字符串一样, 重现一个对象来同步处理它.makePropSafe- 说吧(string)- 一些属性不能由 Handlebars 处理,例如Table 1无效到期 到属性名称中的空格。 这将更新属性名称到[Table 1]用文字来包装 分明的,这样它才安全地用于Handlebars. 理想情况下,应该对对象的每个级别调用此函数 正在访问,例如[Table 1].[property name]是 Handlebar 所需的语法.isValid- 说吧(string)- 检查任何模板的给定字符串,并提供布尔表示其是否有效 模板.getManifest- 返回已为助手生成的JSON清单,描述他们及其参数.
发展
这个库是用 滚动 和Budibase制造的很多软件包一样 我们有 将字符串调温套件构建为UMD,以便被以节点和浏览器为基础的应用程序所使用. 此软件包也 构建 Typescription stub, 当使用库时, 您的 IDE 将用来提供代码补全 。 以下内容: 为发展目的提供命令:
yarn build- 将打字杆和捆绑放入dist目录.yarn test- 运行测试套件,检查各种帮助者是否仍在运行,因为 和少数预期使用的案例.yarn dev- 由lerna用来观察和构建任何变化的内部命令 切换为主yarn dev{\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你还得去吗.
还必须指出,这个软件包的管理方式与单套装中所有其他软件一样, 通过莱娜.