我正在开发Cakephp 2.x ..现在我正在加载我这样的js和css文件
查看/布局/ default.ctp
<?php echo $this->fetch('css'); ?>
<?php echo $this->fetch('script'); ?>
<?php echo $this->fetch('scriptBottom');?>
并且在每个视图文件中我这样做是因为有些页面我正在加载不同的css和js文件
例如,查看/用户/ index.ctp
echo $this->Html->script('libs/modernizr.custom',array('inline' => false));
$this->Html->css('reset3860.css', null, array('inline' => false));
echo $this->Html->script('libs/jquery-1.8.2.min', array('block' => 'scriptBottom'));
现在我面临的第一个问题是当我必须在视图页面底部写 js 时,例如,如果我通过ajax提交表单...我不能写在索引页面的底部...因为如果我写在那里js将在页面的中间或中心,所以现在我做的是我去default.ctp并写在那里.. 所以我想写在索引页面的底部,这样它很容易管理,我可以很好地看到我在做什么
第二个问题是管理所有这些的最佳方法是什么...或者有没有办法让我可以创建一个cs和js文件...其中只有 css 和 js 文件被加载..然后我在默认情况下包含该文件。 ctp页面
答案 0 :(得分:3)
在scriptBottom
阻止之后,您应该将content
块放在布局的底部:
<body>
<?php
echo $this->fetch('script');
echo $this->fetch('content');
echo $this->fetch('scriptBottom');
?>
</body>
然后在你的观点中(通知 - NO echo
):
$this->Html->script(
'libs/jquery-1.8.2.min',
array('block' => 'scriptBottom')
);
$this->Html->scriptBlock(
"alert('Boom!');",
array('block' => 'scriptBottom')
);
答案 1 :(得分:0)
这里有非常好的概念,而且我已经应用于我的一个应用程序中,它运行得很好
它与CakePHP 2.1兼容,并将其打包为插件。并且还将CSS压缩从CSSTidy升级到更新且更好的CSS Min。
该插件安装快捷方便。安装说明有点长 - 但这只是为了提供清晰度。
有关详情视图,您可以参考详情链接Cakephp.org,您也可以看到插件document以及如何在您的应用中使用