模板路径常量传址到js文件中的小技巧

Think PHP  内置 模板 引擎中有一些快捷 路径 定义,
可以很方便地对应 目录 ,使用中模板会 自动 解释这些 路径

通常要将这些 路径 传值到js 文件 中,我们会使用
  1. <script type="text/javascript">
  2. var URL = '__URL__',
  3. APP = '__APP__',
  4. PUBLIC = '__PUBLIC__';
  5. </script>
复制代码
这种方式,但这样定义的是全局变量并不是很好,引用:


当JS解析器执行时首先就会在执行环境里构建个全局对象,
定义全局属性就是作为该对象属性读取在顶层代码中,

我们使用this关键字和window对象都可以访问到它
而体中局部变量只在执行时生成对象中存在
执行完毕时局部变量即刻销毁
因此在设计中我们需要考虑如何合理声明变量
这样既减小了不必要内存开销
同时能很大程度地避免变量重复定义而覆盖先前定义变量所造成Debug麻烦



其实我们也可以使用这种方式,当需要的时候才进行调用:
  1. function consts(v) {
  2.     var cons = {
  3.         url     :   '__URL__',
  4.         mname   :   '{*MODULE_NAME}',
  5.         aname   :   '{*ACTION_NAME}',
  6.         public  :   '../Public/'
  7.     };
  8.     return cons[v];
  9. }
复制代码
// 这样调用也比较清晰方便
alert ( consts('public') );

如果是jquery,也可以这样使用

  1. <script type="text/javascript">
  2. $.consts = {
  3.         url    :   '__URL__',
  4.         gname  :   '{*GROUP_NAME}',
  5.         mname  :   '{*MODULE_NAME}',
  6.         aname  :   '{*ACTION_NAME}',
  7.         public :   '__Public__'
  8.     };
  9. </script>
复制代码
在jquery中 获取 相应的解析:
var url = $.consts.url
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值