Prestashop 1.7.4.0无法在自定义模块中从挂钩加载CSS和js文件

时间:2018-07-11 13:25:11

标签: module prestashop assets prestashop-1.7

我正在运行Prestashop 1.7.4.0,并构建了一个用于发布评论的自定义模块。

每次用户访问要加载模块的产品页面时,我都试图加载一个CSS文件和一个javascript文件。

public function hookDisplayProductComments($params) {
    //...code
    $this->assignProductComments();
    return $this->display(__FILE__, 'displayProductTabContent.tpl');
}

在函数assignProductComments()中,我有:

public function assignProductComments() {
    //...code
    $this->context->controller->addCSS($this->_path.'views/css/mymodcomments.css');
    $this->context->controller->addJS($this->_path.'views/js/mymodcomments.js');
    //...code
    }

不仅不加载文件,而且页面源中也没有痕迹。

我提到:

  • 两个文件中都有一些内容
  • 目录结构为:/views/css/mymodcomments.css/views/js/mymodcomments.js,位于模块的文件夹中
  • 要么我将这些资产保留在目录中,要么删除它们,脚本似乎仍然没有尝试加载它们

我尝试过:

  • 清理缓存

  • 强制编译文件

  • 卸载并重新安装模块

1 个答案:

答案 0 :(得分:1)

好的,答案是资产(js和css文件)需要加载到hookDisplayHeader()函数中。 因此,您必须在registerHook('displayHeader')函数的自定义模块中添加install(),然后卸载并重新安装自定义模块。