IT Share you

Composer로 jQuery를 설치하는 방법은 무엇입니까?

shareyou 2020. 12. 12. 12:39
반응형

Composer로 jQuery를 설치하는 방법은 무엇입니까?


다음과 같이 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"
            }
        }
    },

문서에서 "type": "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 용 Component Installer를 사용 하며 기본적으로 Component의 모든 자산은 아래에 설치 components되지만 사용자 정의 할 수 있습니다. ( 문서 참조 ).


As outlined already, part one of the solution is defining you own repositories and the "type: ": "file" repository definition option. But a subsequent issue is getting composer to put the JQuery where you want it. As it stands, composer seems to be limited to downloading dependency source under vendor-dir (which is annoying but probably related to autoloading requirements). The general fix to this limitation is to write a composer plugin that overcomes it. Seems to be a few plugins that can manage this. The simplest most lightweight solution I've found is PHP Composer Asset Manager, which is dedicated to managing non PHP/Composer "assets". Though, it has at least one limitation in that changes that the plugin makes are not managed/detected by composer. Still usable.

Here's a full composer.json to install JQuery using that plugin:

{
  "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": "*"
      }
    }
  }
}

you can install jquery by using npm like so,

npm install jquery

https://www.npmjs.com/package/jquery


Use npm, yarn or WebPack instead of Composer they are way better for that kind of needs.

참고URL : https://stackoverflow.com/questions/11663559/how-to-install-jquery-with-composer

반응형