在TYPO3'中禁用文件压缩;be:集装箱';
我一直在开发TYPO3扩展。在设计后端模块时,我注意到我的css和js外部文件包括在在TYPO3'中禁用文件压缩;be:集装箱';,typo3,fluid,Typo3,Fluid,我一直在开发TYPO3扩展。在设计后端模块时,我注意到我的css和js外部文件包括在 <f:be.container loadJQuery="true" includeCssFiles="{0:'https://ajax.googleapis.com/****'}" includeJsFiles="{0:'https://ajax.googleapis.com/****'}" > 正在被压缩,因此设计变得一团糟。 压缩是一种好的行为。我承认。但如何在后端容器中或至少在外部文件中
<f:be.container loadJQuery="true" includeCssFiles="{0:'https://ajax.googleapis.com/****'}" includeJsFiles="{0:'https://ajax.googleapis.com/****'}" >
正在被压缩,因此设计变得一团糟。
压缩是一种好的行为。我承认。但如何在后端容器中或至少在外部文件中避免它呢??徘徊寻找答案2天。从代码中可以看出,使用be.container视图帮助程序(因为它直接调用$pageRenderer->addCssFile,没有选项),这是不容易做到的 您可以添加自己的viewhelper,公开所有addCssFile选项。例如,您的viewhelper可能如下所示:
class AddCssFileViewHelper extends AbstractViewHelper
{
/**
* @var PageRenderer
*/
protected $pageRenderer;
/**
* @param PageRenderer $pageRenderer
*/
public function injectPageRenderer(PageRenderer $pageRenderer)
{
$this->pageRenderer = $pageRenderer;
}
/**
* Initialize arguments.
*
* @throws \TYPO3Fluid\Fluid\Core\ViewHelper\Exception
*/
public function initializeArguments()
{
parent::initializeArguments();
$this->registerArgument('cssFile', 'string', 'path to your file', false, '');
$this->registerArgument('compress', 'bool', 'specifies whether to compress or not, default: true', false, true);
}
public function render()
{
$this->pageRenderer->addCssFile($this->arguments['cssFile'], 'stylesheet', 'all', '', $this->arguments['compress']);
}
}