zfcampus/zf-asset-manager

此包已被弃用且不再维护。作者建议使用laminas-api-tools/api-tools-asset-manager包。

用于将模块资产复制到应用程序文档根的Composer插件。

安装数: 448,903

依赖者: 3

建议者: 2

安全: 0

星标: 11

关注者: 7

分支: 6

开放问题: 0

类型:composer-plugin

1.2.0 2017-11-02 22:28 UTC

This package is auto-updated.

Last update: 2020-01-20 17:10:34 UTC


README

仓库于2019-12-31被弃用

此仓库已迁移至laminas-api-tools/api-tools-asset-manager

Build Status

zf-asset-manager是一个Composer插件,它将配置的Web可访问资产复制到您的Zend Framework应用程序的公共文档根中。它使用rwoverdijk/AssetManager的配置格式,以及特定的子集

'asset_manager' => [
    'resolver_configs' => [
        'paths' => [
            /* paths containing asset directories */
        ],
    ],
],

遍历每个配置的路径,然后将其下的每个路径复制到公共树中。

安装

$ composer require --dev zfcampus/zf-asset-manager

推荐用于开发

我们建议主要将此模块用于开发目的。在大多数情况下,在准备生产时,应该用项目特定的资产覆盖第三方模块的资产。为了强调这一点,资产默认情况下被排除在git仓库之外。(您可以在稍后手动添加它们,如下文所述。)

示例

以下是一个示例,假设在一个包内部有以下的目录结构

./
- asset/
  - README.md
  - gruntfile.js
  - package.json
  - zf-apigility/
    - css/
      - bootstrap.min.css
    - img/
      - logo.png
    - js/
      - bootstrap.min.js
      - jquery.min.js
  - zf-apigility-welcome/
    - css/
      - main.min.css
    - img/
      - ag-hero.png
- config/
  - module.config.php

其中 module.config.php 至少定义了以下内容

return [
    'asset_manager' => [
        'resolver_configs' => [
            'paths' => [
                __DIR__ . '/../asset/'
            ],
        ],
    ],
]

安装包时,资产管理器会将每个 asset/zf-apigility/asset/zf-apigility-welcome/ 树复制到项目的 public/ 路径。由于它们不是目录,省略了单独的文件 asset/README.mdasset/gruntfile.jsasset/package.json

此外,在安装过程中,插件还会在 public/ 路径中添加一个 .gitignore 文件,列出每个新目录

# public/.gitignore
zf-apigility/
zf-apigility-welcome/

安装完成后,您可以访问相对于公共根目录安装的任何资产。

卸载

当您删除模块时,插件将

  • 从公共树中删除为模块配置的任何资产树。
  • public/.gitignore 文件中删除与那些资产树相关的条目。

保留资产

资产默认情况下被Git标记为忽略。此模块的主要目的是用于开发;它被开发出来以允许安装与Apiglity管理UI、欢迎屏幕和文档相关的资产,其中大多数仅在开发模式下相关。

但是,如果您希望保留公共树中的资产,可以按照以下方式操作

  • 编辑 public/.gitignore 文件,删除您希望保留的资产树条目。
  • 将资产树添加到您的仓库中(git add public/{tree})。

public/.gitignore 中删除条目就足以防止在删除模块时卸载器删除资产。