如何使用 Composer 安装 jQuery?
-
11-12-2019 - |
题
我已经能够安装没有composer.json文件的存储库,如下所示:
{
"type": "package",
"package": {
"name": "yahoo/yui-compressor",
"version": "2.0.4",
"dist": {
"url": "http://yui.zenfs.com/releases/yuicompressor/yuicompressor-2.4.7.zip",
"type": "zip"
}
}
},
我选择了“类型”:文档中的“zip”部分,但我找不到许多其他类型。例如,我需要安装 jQuery,但我不知道要在类型中放入什么(“js”不起作用)。
{
"type": "package",
"package": {
"name": "jquery/jquery",
"version": "1.7.2",
"dist": {
"url": "http://code.jquery.com/jquery-1.7.2.js",
"type": "js"
}
}
}
有任何想法吗?
编辑:我正在添加完整的 解决方案 帮助@CMCDragonkai:
"require": {
"vendorname/somefile": "1.2.3",
},
"repositories": [
{
"type": "package",
"package": {
"name": "vendorname/somefile",
"version": "1.2.3",
"dist": {
"url": "http://example.com/somefile.txt",
"type": "file"
}
}
}
]
解决方案
这只是一个缺少的功能。应该有一个新类型的dist,只是一个待下载的单一明文文件和留下。请在github问题跟踪器上提出功能请求: https://github.com/composer/composer/issues/
编辑:
要素实际存在但没有记录。
."type": "file"
其他提示
实际上有一个更简单的方法来安装 jQuery,只需输入:
{
"require": {
"components/jquery": "1.9.*"
}
}
它用 Composer 的组件安装程序 默认情况下,组件中的所有资源都安装在 components
, ,但可以自定义。(请参阅文档).
已概述,部分解决方案是定义您自己的存储库和"type: ": "file"
存储库定义选项。但随后的问题是让作曲家放以你想要的jQuery。正如它所致,Composer似乎仅限于在vendor-dir
下下载依赖源(这很烦人但可能与自动加载要求相关)。本限制的一般修复是编写一个克服它的作曲家插件。似乎是一些可以管理这一点的插件。我发现的最简单的最轻量级解决方案是 PHP Composer Asset Manager ,专用于管理非PHP / Composer”资产“。虽然,它在该改变中具有至少一个限制,即COMPOSER不会管理/检测到插件。仍然可用。
这是一个完整的Finainodicetagcode,可以使用该插件安装jQuery:
{
"name": "foo/bar",
"require":
{
"phpclasses/assets": "*",
"jquery/jquery": "*"
},
"repositories": [
{
"type": "composer",
"url": "http://www.phpclasses.org/"
},
{
"type": "package",
"package": {
"name": "jquery/jquery",
"version": "1.7.2",
"type": "jquery",
"dist": {
"url": "http://code.jquery.com/jquery-1.7.2.js",
"type": "file"
}
}
}
],
"extra": {
"assets": {
"actions": [
{
"type": "copy",
"target": "webroot/js",
"pattern": "\\.js$"
}
],
"packages": {
"jquery/jquery": "*"
}
}
}
}
. 使用npm
,yarn
或WebPack
而不是作曲家,它们对那种需求更好。