前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Juicer 中文文档

Juicer 中文文档

作者头像
竹清
发布2018-08-31 10:39:45
3.9K0
发布2018-08-31 10:39:45
举报
文章被收录于专栏:竹清助手

第一部分: 参数配置

方法与参数

参数配置方法是 juicer.set,该方法接受两个参数或一个参数:

  1. 当传入两个参数时,如 juicer.set('cache',false),即是设置 cachefalse
  2. 当传入一个参数时,该参数应为一个对象,如 juicer.set({cache:false}),系统将遍历这个对象的属性来设值
可以配置的内容

我们可以配置一些参数选项,包括 cachestriperrorhandlingdetection;其默认值都是 true;我们还可以修改模板的语法边界符,如 tag::operationOpen等。具体可配置的项可以参看其源代码。

工作原理
代码语言:javascript
复制
juicer.options = {  // 是否缓存模板编译结果  cache: true,  // 是否清除空白  strip: true,  // 是否处理错误  errorhandling: true,  // 是否检测变量是否定义  detection: true,  // 自定义函数库  _method: __creator({    __escapehtml: __escapehtml,    __throw: __throw,    __juicer: juicer  }, {})
};

选项解析如下:

  1. cache是否缓存编译结果(引擎对象)。缓存的结果存于 juicer.__cache
  2. strip是否清除模板中的空白,包括换行、回车等
  3. errorhandling是否处理错误
  4. detection开启后,如果变量未定义,将用空白字符串代替变量位置,否则照常输出,所以如果关闭此项,有可能造成输出 undefined
  5. _method存储的是用户注册的自定义函数,系统内部创建的自定义函数或对象有 __escapehtml处理HTML转义、 __throw抛出错误、 __juicer引用 juicer__creator方法本文最末讲解

在 Node.js 环境中, cache默认值是 false,请看下面代码

代码语言:javascript
复制
if(typeof(global) !== 'undefined' && typeof(window) === 'undefined') {
    juicer.set('cache', false);
}

这段代码在结尾处可以找到。

此外,还有一个属性是 juicer.options.loose,默认值为 undefined(没有设置),当其值不为 false(此亦系统默认)时,将对 {@each}{@if}{@else if}${}{@include}等中的变量名和自定义函数名进行校验,给其中使用到的变量、函数定义并添加到模板的开头,以保证能够顺利使用。

所以,如果我们更改此设置,可能造成系统错误

代码语言:javascript
复制
// 这些操作应当避免,否则会造成系统错误
// 将`juicer.options.loose`设为`false`
// juicer.set('loose',false);

https://github.com/PaulGuo/Juicer

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2016-09-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 竹清助手 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第一部分: 参数配置
    • 方法与参数
      • 可以配置的内容
        • 工作原理
        相关产品与服务
        对象存储
        对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档