λ Έλ λ²μ 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' },
};
λ¬Έμ κ° #1455μ μν΄ λ μ΄μ μ¬μ©λμ§ μμ μ’ λ£λμμ΅λλ€. μ΄μ μ΄ μλ리μ€κ° μλν©λλ€.
μ΄ λ¬Έμ λ νλμ΄ μμ΄ μλμΌλ‘ μ κ²Όμ΅λλ€.
μ μ¬νκ±°λ κ΄λ ¨λ λ¬Έμ κ° λ°μνλ©΄ μ λ¬Έμ λ₯Ό μ μΆνμμμ€.
μλ λν μ κΈ μ μ± μ λν΄ μμΈν μμ보μΈμ.
_μ΄ μμ μ λ΄μ μν΄ μλμΌλ‘ μνλμμ΅λλ€._
κ°μ₯ μ μ©ν λκΈ
λ¬Έμ κ° #1455μ μν΄ λ μ΄μ μ¬μ©λμ§ μμ μ’ λ£λμμ΅λλ€. μ΄μ μ΄ μλ리μ€κ° μλν©λλ€.