在使用 ThinkPHP 框架的时候,系统常量(__PUBLIC__
、THINK_PATH
)在引入的 js 文件中不会被解析。
例如在 js 文件中使用了系统常量 __PUBLIC__
:
$(this).attr("src","__PUBLIC__/Images/logo.png");
运行的时候会发现 __PUBLIC__
没有被解析,怎么办呢?
官方的回答是,引入的外部资源文件是不会被TP的模板引擎解析的~ 你需要的话 只能从外部传变量进去。
那么我们就可以在模板文件中定义一个 js 变量,用来储存系统常量模板引擎解析后的URL地址。
模板文件代码:
var publicUrl = "__PUBLIC__";
js 文件代码:
$(this).attr("src",publicUrl+"/Images/logo.png");
这样就可以在 js 文件中使用系统常量了。
如果有更好的方法,欢迎评论~
文章备份,发布时间:2016-01-27 15:15:06