jield-webdev/laminas-assetmanager

Laminas 的资产管理模块

v3.0.2 2023-07-22 10:03 UTC

README

Wesley OverdijkMarco Pivetta 编写

Johan van der Heide 更新到 laminas

简介

本模块旨在与 Laminas 骨架应用 的默认目录结构一起使用。它提供通过简单配置从您的模块目录加载资产和静态文件的功能。这允许您无需将文件复制到 public/ 目录,并且使用资产的方式与视图脚本已实现的方式非常相似,可以被其他模块覆盖。简而言之,此模块允许您“开箱即用”地将资产与模块打包。

安装

  1. 需要资产管理器
./composer.phar require jield-webdev/laminas-assetmanager
#when asked for a version, type "1.*".

使用方法

示例模块配置

<?php

return [
    'asset_manager' => [
        'resolver_configs' => [
            'collections' => [
                'js/d.js' => [
                    'js/a.js',
                    'js/b.js',
                    'js/c.js',
                ],
            ],
            'paths'       => [
                __DIR__ . '/some/particular/directory',
            ],
            'map'         => [
                'specific-path.css' => __DIR__ . '/some/particular/file.css',
            ],
        ],
        'filters'          => [
            'js/d.js' => [
                [
                    // Note: You will need to require the classes used for the filters yourself.
                    'filter' => 'JSMin',
                ],
            ],
        ],
        'view_helper'      => [
            'cache'            => 'Application\Cache\Redis', // You will need to require the factory used for the cache yourself.
            'append_timestamp' => true,                      // optional, if false never append a query param
            'query_string'     => '_',                       // optional
        ],
        'caching'          => [
            'js/d.js' => [
                'cache' => 'Apc',
            ],
        ],
    ],
];

命令行使用

基于 Laminas-CLI,还支持资产预热和清除。

./vendor/bin/laminas assetmanager:warmup --purge|-p --verbose|-v

此脚本将创建所有资产并将它们存储在缓存中。如果设置了清除标志,它还将清除现有缓存。这在部署场景中可能很有用。

请小心,因为这个模块将以原样服务每个文件,包括 PHP 代码。

最近任务列表已经大幅缩减。然而,还有一些事情应该完成。

  • 更新缓存