lsat / yii2-bower-asset
通过 Composer 仓库提供 Yii 2 应用程序的 Bower 资产
Provides
- bower-asset/adminlte: ~2.4.18
- bower-asset/angular: ~1.3.20
- bower-asset/angular-bootstrap: ~0.13.4
- bower-asset/angular-resource: ~1.3.20
- bower-asset/angular-route: ~1.3.20
- bower-asset/angular-validation: ~1.3.3
- bower-asset/bootstrap: *
- bower-asset/chartjs: ~2.6.0
- bower-asset/inputmask: *
- bower-asset/jquery: *
- bower-asset/punycode: *
- bower-asset/typeahead.js: *
- bower-asset/yii2-pjax: *
README
Yii 2 核心Bower资产
Yii 2 官方 Composer 仓库的 Bower 资产解决方案
功能
1. 通过 Composer(即使版本为 v2.0.13 及以上)安装或更新 Yii 2 应用的 Bower 资产,无需任何插件
2. 防止在为 Yii2 使用 Composer 安装和更新时出现 Bower 包错误
问题 1
- yiisoft/yii2 2.0.12 需要 bower-asset/jquery 2.2.@稳定 | 2.1.@稳定 | 1.11.@稳定 | 1.12.@稳定 -> 未找到匹配的包。
3. 通过原始 Composer 仓库的官方安装方式
厌倦了 fxp/composer-asset-plugin?这是一个好的项目,有很好的想法和实现。但它有一些问题:它大大减慢了 composer update 的速度,并需要全局安装,因此会影响所有项目。此外,还存在 Travis 和 Scrutinizer 集成的一些特殊问题,有点烦人。
与 Asset Packagist 相比,此包的目标是通过原始 Composer 仓库安装 Yii2 应用的 Bower 资产,并使 Bower 和 Composer 分离。
支持的包
此 Bower 资产支持 Yii 2 核心(如 widgets 或 validators)。
对于 Yii 2 应用程序模板(如 yii2-app-basic
和 yii2-app-advanced
),此包也支持 yii2-bootstrap
和其他依赖包,如 yii2-debug
和 yii2-gii
。
安装
1. 需求包
在 Yii2 的 composer.json
中,在 yiisoft/yii2
之前需要 lsat/yii2-bower-asset
。
示例 composer.json
"require": {
"php": ">=5.4.0",
"lsat/yii2-bower-asset": "~2.1.1",
"yiisoft/yii2": "~2.0.50",
"yiisoft/yii2-bootstrap": "~2.0.0"
"mdmsoft/yii2-admin": "~3.0"
}
从 v2.1.1 开始支持 "mdmsoft/yii2-admin": "~3.0"
上述设置后,它与 lsat/yii2-composer-bower-skip 相同,这使得 composer 可以安装和更新 Yii2 而无需 Bower 插件。
2. 设置应用程序配置
在 Yii2 应用程序的 config/web.php
中,添加一个名为 @bower
的别名,指向 @vendor/lsat/yii2-bower-asset/bower
$config = [
...
'aliases' => [
'@bower' => '@vendor/lsat/yii2-bower-asset/bower'
],
...
];
这种方法在效率和质量方面都是更好的方式。相反,您也可以使用安装程序来设置
3. 删除 Composer Asset-Packagist 仓库
如果您正在使用 Yii 的 2.0.13 或更高版本,您可能需要删除 composer.json
中的 repositories
设置,以便使用原始 Composer 仓库。
composer.json
中要删除的示例片段
"repositories": [
{
"type": "composer",
"url": "https://asset-packagist.org"
}
]
最后,运行 composer update
命令,然后享受它。
创建项目
如果您还没有 Yii2 项目,请选择以下方式之一来创建
通过 Composer 创建项目
您可以使用以下包使用 Composer 创建 Yii2 项目:
lsat/yii2-app-basic
composer create-project --prefer-dist lsat/yii2-app-basic
lsat/yii2-app-advanced
composer create-project --prefer-dist lsat/yii2-app-advanced
这些包是带有固定 Bower 的 Yii 2 应用程序模板,其中已包含 lsat/yii2-bower-asset
。
从官方网站创建项目
您可以从官方 存档文件 下载 Yii2 项目,然后按照上述说明手动在它上安装 yii2-bower-asset
。
安装程序使用方法
如果您不想设置应用程序配置设置应用程序配置而是使用安装程序,您可以选择以下其中一种方式进行安装
通过包克隆安装程序安装
在Yii2的composer.json
中,在post-package-install
和post-package-update
事件中添加脚本lsat\\yii2BowerAsset\\Installer::bower
。
"scripts": {
"post-package-install": [
"lsat\\yii2BowerAsset\\Installer::clone"
],
"post-package-update": [
"lsat\\yii2BowerAsset\\Installer::clone"
]
}
通过别名设置安装程序安装
在Yii2的composer.json
中,在post-update-cmd
事件中添加脚本lsat\\yii2BowerAsset\\Installer::setAlias
。
"scripts": {
"post-package-install": [
"lsat\\yii2BowerAsset\\Installer::setAlias"
],
"post-package-update": [
"lsat\\yii2BowerAsset\\Installer::setAlias"
],
"unset-yii2-bower-asset": [
"lsat\\yii2BowerAsset\\Installer::unsetAlias"
]
}
此安装将修改Yii2文件,您可以通过运行
composer run-script unset-yii2-bower-asset
来恢复。
限制
不要将Bower与Composer项目混合使用是此包的目标。
Bower包的多样性仅适用于Yii2核心。
Bower包的版本被固定为当前的Yii2版本。
如果您在Yii2中需要其他Bower包,您可以为该包设置配置,或者选择不使用。