我正在试图弄清楚如何使用Anthony Male的资产库,它也用于PyroCMS,只能通过控制器将某些资产加载到我的模板。
我有一个加载特定文件的模板,根据控制器(如登录控制器),我需要它在页脚底部注入login.js文件,它将在模板末尾加载。
有什么想法吗?
答案 0 :(得分:1)
你要求页脚底部,但我的回答对你有用。
我正在使用资产库,但不是你的资产库,而是我的处理方式;
在我的控制器中;
/**
* Global header variable for header view
*
* @var array
* @access protected
*/
protected $header = array();
public function __construct() {
// it returns like : <script type="text/javascript" src="http://domain.com/assets/js/jquery-min.js"></script>
$this->header["jses"][] = js("jquery-min.js");
$this->header["jses"][] = js("jquery.autogrow-textarea.js");
}
public function index() {
// some code here
$this->load->view("header",$this->header);
// other views
}
在我的标题视图中;
<?php foreach ( $jses as $js ) echo $js; ?>
答案 1 :(得分:1)
引用Anthony Male资产库的官方文档,可在此处找到:http://docs.pyrocms.com/2.1/manual/developers/tools/assets
可以使用以下命令在控制器中添加Javascript文件,其中myfile.js是您要包含的javascript文件,位于assets / js / myfile.js。
// Will add assets/js/myfile
Asset::js('myfile.js');
// Will add assets/admin/js/myfile.js
Asset::js('admin::myfile.js');
默认情况下,Asset将缩小这两个文件并将它们合并为一个文件(写入assets / cache / .js)。要在页面中包含此文件,请在视图中使用以下内容:
echo Asset::render_js();