`
achun
  • 浏览: 306413 次
  • 性别: Icon_minigender_1
  • 来自: 河南郑州
社区版块
存档分类
最新评论

jCT 第三版简要文档,此文档已经废弃,留作历史

    博客分类:
  • jCT
阅读更多

JavaScript Common Templates 第三版简要文档

文档文法描述 :

对于要描述的对象使用如下文法
name:type||example description

调用 :创建一个jCT的实例,此实例具有自己解析/执行模板的能力

var jct = new jCT(txt,path);

参数 :

txt:"" 模板原文本对应属性Fn.Src

path:"" 模板文件的url所在路径(不是url)对应属性Fn.Path

建立 :解析模板使模板代码化

jct.Build([如果直接执行,传入执行的数据对象])

例子 :

jct.Build(obj) 


同效果

jct.Build().Exec(obj);

注意:如果带参数的话,是否执行Exec会受ReBuild扩展影响,参见ReBuild扩展

执行 :执行模板,默认返回模板执行后的文本数据,可以通过 Exec 扩展语法制定

jct.Exec([执行的数据对象])

默认参数 :

D 如果没有制定Exec扩展语法的话,此参数是 Exec 的默认参数,表示传入的数据

保留字串 :

/*...*/ 再使用Exec扩展语法时用于替换主体过程的占位符

jCT的实例保留方法和属性 :

  Fn={             用于保留jCT实例创建,执行时的数据,有些是为了方便调试
    A:[]           SRC的模板数组形式表示
    D:{}           用于保留执行(Exec)模板时候传入的参数
    V:[]           在执行(Exec)模板过程当中生成结果的数组形式
    EXEC:[]        Build模板的时候生成的主体过程数组形式
    RUN:()         由 Run 扩展语法获得的只运行一次函数
    ERROR:{}       Build异常时的错误信息.
    Path:""        保留模板的URL路径,由调用模板的函数提供,目的是考虑到这个可能会有很多的用途。
    Src:""         模板原文本,由调用模板的函数提供
    src:""         经过清理后的模板文本
    Tag:{          当前选定的模板标签风格,是一个指向Tags内某个风格的引用,结构如下
      block:{      jCT模板块标记设定
        begin:""   标记的开始字符串
        end:""     标记的结束字符串
      }
      exp:{}       jCT模板取值表达式设定
      ext:{}       jCT模板扩展语法标记设定,参见见扩展语法一节
      clean:{}     jCT模板清理标记设定
    }
    Tags:{         所有支持的模板标签风格,内置三种风
      comment:{    //注释标签风格
        block:{begin:''},
        exp:{begin:'+-',end:'-+'},
        ext:{begin:'/*+',end:'*/'},
        clean:{begin:'',end:''}
      },
      script:{     //脚本标签风格
        block:{begin:'',end:''},
        exp:{begin:'+-',end:'-+'},
        ext:{begin:'/*+',end:'*/'},
        clean:{begin:'',end:''}
      },
      code:{       //code标签风格
        block:{begin:'',end:''},
        exp:{begin:'+-',end:'-+'},
        ext:{begin:'/*+',end:'*/'},
        clean:{begin:'',end:''}
      }
    }
    Clean:()       清理模板,参数对应属性的TAG
    Parse:()       模板的解析
    Slice:()         模板分段函数
  }
  Exec:()          执行模板,参见Exec扩展
  Build:()          构建模板方法
  ReBuild:()     在Build期间执行,参见ReBuild扩展
  GetView:()    便捷的获取 return this.Fn.V.join("");

扩展语法 :jCT模板使用的是原生的 JavaScript 语法,为了达到模板的高度可制定性设计了扩展语法

 

  Exec:            自定义的构建 Exec 方法的主体内容
    <script type="jct">/*+Exec*/
      var D=arguments[0]||{};
      /*...*/
      $('#mainbody').html(this.GetView());
    </script>
    <script type="jct">/*+Exec*/
      var D=arguments[0]||{};
      with(D){/*...*/}
      $('#mainbody').html(this.GetView());
    </script>
  ReBuild:      当执行Build时发生,如果定义了ReBuild并且有任何值返回,Build都会忽视传入的参数
    下面的例子没有返回值,那么会执行foo(),如果使用jct.Build(obj),那么jct.Exec(obj)会被执行
    <script type="jct">/*+ReBuild*/
      foo();
    </script>
    下面的例子有返回值,那么会执行foo(),如果使用jct.Build(obj),那么jct.Exec(obj)不会被执行
    <script type="jct">/*+ReBuild*/
      foo();
      return true;
    </script>

  Run:            扩展语法获得的只运行一次
    <script type="jct">/*+Run*/
      foo();
    </script>
  Child:           定义一个子jCT实例
    <script type="jct">/*+Child childname*/</script>
      Templates Source Code
    <script type="jct">/*-Child childname*/</script>
  /*...*/:             保留字串也可以算作扩展语法,只能出现在 Exec扩展语法中

 

(因为贴在代码里格式较整齐,所以就利用了一下)

分享到:
评论
1 楼 achun 2008-07-11  
http://ne.16lo.com/?entry=achun
第3版的内测站,还是nicEditor打包工具,
打包没有开始做,还是围绕jCT在干活.

相关推荐

    电信塔施工方案.doc

    5G通信行业、网络优化、通信工程建设资料。

    29-【智慧城市与政府治理分会场】10亿大数据助推都市治理-30页.pdf

    29-【智慧城市与政府治理分会场】10亿大数据助推都市治理-30页.pdf

    ABB IRC5 Compact 机器人产品手册

    ABB IRC5 Compact 机器人产品手册

    LTE容量优化高负荷小区优化指导书.docx

    5G通信行业、网络优化、通信工程建设资料

    施工工艺及质量检查记录表.docx

    5G通信行业、网络优化、通信工程建设资料。

    25G无源波分安装规范指导.docx

    5G通信、网络优化与通信建设

    基于Springboot+Vue在线宠物用品交易网站毕业源码案例设计.zip

    网络技术和计算机技术发展至今,已经拥有了深厚的理论基础,并在现实中进行了充分运用,尤其是基于计算机运行的软件更是受到各界的关注。加上现在人们已经步入信息时代,所以对于信息的宣传和管理就很关键。系统化是必要的,设计网上系统不仅会节约人力和管理成本,还会安全保存庞大的数据量,对于信息的维护和检索也不需要花费很多时间,非常的便利。 网上系统是在MySQL中建立数据表保存信息,运用SpringBoot框架和Java语言编写。并按照软件设计开发流程进行设计实现。系统具备友好性且功能完善。 网上系统在让售信息规范化的同时,也能及时通过数据输入的有效性规则检测出错误数据,让数据的录入达到准确性的目的,进而提升数据的可靠性,让系统数据的错误率降至最低。 关键词:vue;MySQL;SpringBoot框架 【引流】 Java、Python、Node.js、Spring Boot、Django、Express、MySQL、PostgreSQL、MongoDB、React、Angular、Vue、Bootstrap、Material-UI、Redis、Docker、Kubernetes

    通信各专业(管道、线路、设备)安全操作规程.docx

    5G通信行业、网络优化、通信工程建设资料

    node-v12.13.1-x86.msi

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    C#Gif动画录制软件是一款方便好用的小软件源码.zip

    Gif动画录制软件是一款方便好用的小软件,使用此工具,您可以记录屏幕的选定区域,网络摄像头的实时提要或草图板上的实时图形。之后,您可以编辑动画并将其另存为gif,apng,视频,psd或png图像。

    协同供应链集成详细功能介绍V70.rar

    协同供应链集成(Collaborative Supply Chain Integration,CSCD是数字化转型解决方案中的重要一环,旨在通过技术手段实现供应链各环节的无缝对接与高效协作。V70版本作为该解决方案的一个升级版,可能包含了更加先进的功能和工具,以支持企业在复杂的商业环境中保持竞争力。这个资料包“协同供应链集成详细功能介绍V70.rar”很可能提供了对V70版本功能的深入剖析,包括了如何利用最新的数字化工具和技术来优化库存管理、订单处理、物流跟踪、供应商管理以及客户关系管理等关键供应链过程。它可能详细介绍了实时数据共享、自动化流程、预测分析、风险管理和智能决策支持系统等创新功能,这些功能有助于减少供应链中断,提高透明度,降低运营成本,并增强整个供应链网络的响应能力。通过这个资料,企业可以获得实施协同供应链集成的全面指导,了解如何通过集成的信息系统和平台,实现数据的一致性和准确性,以及如何通过合作伙伴之间的紧密协作,提升整个供应链的效率和灵活性。这对于追求数字化转型的企业来说,是一个宝贵的资源,因为它不仅提供了理论框架,还可能包含了实际案例研究、最佳实践和实施策略,帮助企业

    英飞凌官方ADS库1.9.20版

    英飞凌官方ADS库1.9.20版

    node-v7.7.3.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    node-v11.1.0-linux-armv7l.tar.gz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    通信工程质量控制方案.docx

    5G通信行业、网络优化、通信工程建设资料。

    5GC参数设置问题导致UE无法接入.docx

    5G通信行业、网络优化、通信工程建设资料

    动力机房--低压市电、基础勘察设计知识.pptx

    5G通信行业、网络优化、通信工程建设资料

    jump(1).mobileprovision

    jump(1).mobileprovision

    node-v6.14.3-aix-ppc64.tar.gz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    Exam2024SpringA.ipynb

    Exam2024SpringA.ipynb

Global site tag (gtag.js) - Google Analytics