Angular-cli: npm 쒅속성이 μžˆλŠ” 타사 라이브러리 λ˜λŠ” cli 도ꡬ 지원에 λŒ€ν•œ 예제λ₯Ό μ œκ³΅ν•˜μ„Έμš”.

에 λ§Œλ“  2016λ…„ 07μ›” 10일  Β·  2μ½”λ©˜νŠΈ  Β·  좜처: angular/angular-cli

λ…Έλ“œ 버전 v4.4.6, npm 버전 v2.15.5

기쑴의 타사 libs wiki νŽ˜μ΄μ§€λŠ” ν›Œλ₯­ν•©λ‹ˆλ‹€.

https://github.com/angular/angular-cli/wiki/3rd-party-libs

κ·ΈλŸ¬λ‚˜ ν˜„μž¬ 예제의 3개 λͺ¨λ‘μ—λŠ” npm 쒅속성이 μ—†μŠ΅λ‹ˆλ‹€. 였늘 μ €λŠ” npmμ—μ„œ angular2-clipboardλ₯Ό μ‚¬μš©ν•˜λ €κ³  ν–ˆμ§€λ§Œ ν΄λ¦½λ³΄λ“œμ— 따라 달라지며, 이 ν΄λ¦½λ³΄λ“œλŠ” 3개의 λ‹€λ₯Έ λͺ¨λ“ˆμ— μ˜μ‘΄ν•©λ‹ˆλ‹€. μž‘λ™μ‹œν‚€λ €λ©΄ AFAICT 5개 λͺ¨λ“ˆ λͺ¨λ‘μ— λŒ€ν•œ 맀핑을 SystemJS에 μ œκ³΅ν•΄μ•Ό ν–ˆμŠ΅λ‹ˆλ‹€. npmcdn을 μ‚¬μš©ν•  λ•Œ 처음 2개만 ν•„μš”ν–ˆλŠ”μ§€ ν™•μ‹€ν•˜μ§€ μ•Šμ§€λ§Œ 둜컬 버전을 μ‚¬μš©ν•˜λ©΄ ν΄λ¦½λ³΄λ“œμ˜ 3개 쒅속성에 λŒ€ν•œ μš”κ΅¬κ°€ ν•΄κ²°λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

ν•΄λ‹Ή λͺ¨λ“ˆμ„ ν•΄κ²°ν•˜λŠ” 데 잘λͺ»λœ μ ‘κ·Ό 방식을 μ·¨ν•˜κ³  μžˆμ—ˆμŠ΅λ‹ˆκΉŒ? 그렇지 μ•Šμ€ 경우 cli 도ꡬ가 npm 쒅속성과 ν•΄λ‹Ή package.json νŒŒμΌμ„ 보고 쒅속성 νŠΈλ¦¬μ—μ„œ 맀핑해야 ν•  νŒŒμΌμ„ νŒŒμ•…ν•  수 μžˆλŠ” 것 κ°™μŠ΅λ‹ˆλ‹€. λΆ„λͺ…νžˆ 이 νŠΈλ¦¬λŠ” npm v2λ₯Ό μ‚¬μš©ν–ˆκΈ° λ•Œλ¬Έμ— npm v3이 더 ν‰ν‰ν–ˆμ„ κ²ƒμ΄μ§€λ§Œ AFAICTλŠ” μ§€μ •λœ 타사 라이브러리 μ•„λž˜ 트리의 각 쒅속성을 맀핑해야 ν•˜λŠ” 것과 λ™μΌν•œ λ¬Έμ œκ°€ μ‘΄μž¬ν•©λ‹ˆλ‹€.

"ng install-lib angular2-module" λ˜λŠ” 이와 μœ μ‚¬ν•œ κΈ°λŠ₯을 μ‚¬μš©ν•˜μ—¬ μ΄λŸ¬ν•œ 단계λ₯Ό μžλ™ν™”ν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€. FWIW - 이λ₯Ό μˆ˜ν–‰ν•˜κΈ°μ— μΆ©λΆ„ν•œ 데이터가 package.json νŒŒμΌμ— μžˆλŠ” 것 κ°™μŠ΅λ‹ˆλ‹€. angular2 릴리슀둜 타사 angular2 ꡬ성 μš”μ†Œλ₯Ό μ„€μΉ˜ν•˜λ €λ©΄ CLI 지원이 있으면 훨씬 쒋을 κ²ƒμž…λ‹ˆλ‹€. :웃닀:

μ  μž₯, κΈ°μ‘΄ package.json νŒŒμΌμ— 데이터가 _μ—†μœΌλ©΄_ ν•„μš”ν•œ 데이터λ₯Ό _μ œκ³΅ν• _ 수 μžˆλ„λ‘ ν•΄λ‹Ή ν”„λ‘œμ νŠΈμ—μ„œ μΆ”κ°€ν•  수 μžˆλŠ” angular-cli.json(λ˜λŠ” angular-cli-package.json λ˜λŠ” 기타)을 μ •μ˜ν•˜μ‹­μ‹œμ˜€. :웃닀:

μ–΄μ¨Œλ“  λ‹€μŒμ€ angular2-clipboardλ₯Ό μž‘λ™μ‹œν‚€λŠ” 데 μ‚¬μš©ν•œ systemjs κ΅¬μ„±μž…λ‹ˆλ‹€. 더 κ°„λ‹¨ν•˜κ³  더 λ‚˜μ€ 방법이 있고 μ—¬κΈ°μ„œ μ‹€μ œ λ¬Έμ œλŠ” λŒ€μ‹  PEBCAKμž…λ‹ˆλ‹€. :λˆˆμ§“:

/***********************************************************************************************
 * User Configuration.
 **********************************************************************************************/
/** Map relative paths to URLs. */
const map: any = {
  // 'angular2-clipboard':         'https://npmcdn.com/[email protected]',
  // 'clipboard':                  'https://npmcdn.com/[email protected]/dist/clipboard.js',

    'angular2-clipboard': 'vendor/angular2-clipboard',
    'clipboard':          'vendor/angular2-clipboard/node_modules/clipboard/lib/clipboard.js',
    'tiny-emitter':       'vendor/angular2-clipboard/node_modules/clipboard/node_modules/tiny-emitter/index.js',
    'good-listener':      'vendor/angular2-clipboard/node_modules/clipboard/node_modules/good-listener/dist/good-listener.js',
    'select':             'vendor/angular2-clipboard/node_modules/clipboard/node_modules/select/dist/select.js',
};

/** User packages configuration. */
const packages: any = {
    'angular2-clipboard': { main: 'index.js', defaultExtension: 'js' },
};
RFC / discussion / question

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

λ¬Έμ œκ°€ #1455에 μ˜ν•΄ 더 이상 μ‚¬μš©λ˜μ§€ μ•Šμ•„ μ’…λ£Œλ˜μ—ˆμŠ΅λ‹ˆλ‹€. 이제 이 μ‹œλ‚˜λ¦¬μ˜€κ°€ μž‘λ™ν•©λ‹ˆλ‹€.

λͺ¨λ“  2 λŒ“κΈ€

λ¬Έμ œκ°€ #1455에 μ˜ν•΄ 더 이상 μ‚¬μš©λ˜μ§€ μ•Šμ•„ μ’…λ£Œλ˜μ—ˆμŠ΅λ‹ˆλ‹€. 이제 이 μ‹œλ‚˜λ¦¬μ˜€κ°€ μž‘λ™ν•©λ‹ˆλ‹€.

이 λ¬Έμ œλŠ” ν™œλ™μ΄ μ—†μ–΄ μžλ™μœΌλ‘œ μž κ²ΌμŠ΅λ‹ˆλ‹€.
μœ μ‚¬ν•˜κ±°λ‚˜ κ΄€λ ¨λœ λ¬Έμ œκ°€ λ°œμƒν•˜λ©΄ μƒˆ 문제λ₯Ό μ œμΆœν•˜μ‹­μ‹œμ˜€.

μžλ™ λŒ€ν™” 잠금 μ •μ±… 에 λŒ€ν•΄ μžμ„Ένžˆ μ•Œμ•„λ³΄μ„Έμš”.

_이 μž‘μ—…μ€ 봇에 μ˜ν•΄ μžλ™μœΌλ‘œ μˆ˜ν–‰λ˜μ—ˆμŠ΅λ‹ˆλ‹€._

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰