我正在构建一个扩展,它创建一个后端模块,使 be_users 能够调整图像大小。 我正在尝试使用 pageRenderer 添加/包含 css 和 javascript 文件,但这些文件从未包含在内我只能应用 css,如果使用样式标签将它直接添加到流体模板中并包含带有脚本标签的 javascript 文件。
我在 Controller 中尝试过类似的东西
protected $pageRenderer;
....
$this->pageRenderer = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\\CMS\\Core\\Page\\PageRenderer');
$this->pageRenderer->addCssFile('/typo3conf/ext/extKey/Resources/Public/css/styles.css');
$this->pageRenderer->loadJquery();
还尝试了 viewHelper
namespace Vendor\ExtKey\ViewHelpers;
class AddJsFileViewHelper extends \TYPO3\CMS\Fluid\ViewHelpers\Be\AbstractBackendViewHelper {
public function render() {
$doc = $this->getDocInstance();
$pageRenderer = $doc->getPageRenderer();
$pageRenderer->loadJquery();
}
}
在我的模板中
{namespace pager=Vendor\ExtKey\ViewHelpers}
<f:layout name="Default" />
<f:section name="main">
<pager:addJsFile />
...
什么都没有
最佳答案
我不确定你是如何为你的后端定义模板的,但似乎这通常是使用已经具有相应功能的后端容器 View 助手来实现的:
<f:be.container
addCssFile="{f:uri.resource(path:'css/style.css')}"
addJsFile="{f:uri.resource(path:'js/scripts.js')}">
[your templates content]
</f:be.container>
关于php - 如何将公共(public)资源包含到 typo3 extbase 扩展中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21045020/