Yii 手册文档介绍关于性能改进的问题

我们看到文档中介绍改进性能关于js、css的是

文章介绍

第一步:

$cs=Yii::app()->clientScript;

$cs->scriptMap=array(

    'jquery.js'=>'/js/all.js',

    'jquery.ajaxqueue.js'=>'/js/all.js',

    'jquery.metadata.js'=>'/js/all.js',

    …

);

第二步,你的意思是用某些工具把文件并入all.js

疑问:

1.你的all.js文件 并入的是上述几个js的连接地址,还是js的文件内容?请写一个例子

  1. 若你都并入了所有的内容,我们都知道可以用YUI yuicompressor-x.y.z.jar来压缩文件大小,之后全体页面都引入这一个压缩后的文件,岂不是更加好?

  2. 第一步中的这些语句,如'jquery.ajaxqueue.js'=>'/js/all.js',

all.js的路径需要写全路径吗? 比如Yii::app()->request->baseUrl.'/js/all.js'

谢谢

  1. js文件的内容

  2. 我们的初衷就是是这样的

  3. all.js指的是完整的URL

Quote

3. all.js指的是完整的URL

那就是说必须Yii::app()->request->baseUrl.'/js/all.js'

这样组合成实际地址后才能传入array,本身$cs->scriptMap 不默认是在Yii::app()->request->baseUrl这个地址下工作的。对吧。

是这样。不过你不应该在配置文件里访问Yii::app()->request,因为此时request还没有配置,如果你这样访问的话,request将无法被配置。建议你直接访问$_SERVER,获得baseUrl。

好的 明白了 谢谢