2016-09-01 5 views
3

내 현재 Angular 2 CLI 프로젝트에서 1.0.0-beta.11-webpack.8으로 업그레이드하고 업그레이드 된 CLI의 예상 속성과 일치하도록 angular-cli.json을 업데이트했습니다. 나는 봉사 NG 실행하면이 오류 얻을 :Angular 2 CLI 최신 및 최신 서비스로 업그레이드되었습니다.

`Cannot read property 'length' of undefined 
TypeError: Cannot read property 'length' of undefined 
    at Object.getWebpackCommonConfig (/Applications/MAMP/htdocs/learnloop/node_modules/angular-cli/addon/ng2/models/webpack-build-common.ts:23:25) 
    at new NgCliWebpackConfig (/Applications/MAMP/htdocs/learnloop/node_modules/angular-cli/addon/ng2/models/webpack-config.ts:13:30) 
    at Class.exports.default.Task.extend.run (/Applications/MAMP/htdocs/learnloop/node_modules/angular-cli/addon/ng2/tasks/serve-webpack.ts:19:22) 
    at /Applications/MAMP/htdocs/learnloop/node_modules/angular-cli/addon/ng2/commands/serve.ts:84:26 
    at process._tickCallback (internal/process/next_tick.js:103:7)` 

나는 한동안이 씨름을하지만 깨진 상태에하지 각도 CLI 이러한 모든 명령을 실행하고 점점 후에, 나는이 실행 해요 발행물.

`npm uninstall -g angular-cli 
npm cache clean 
npm install -g [email protected] 
rm -rf node_modules dist tmp typings 
npm install --save-dev [email protected]` 

그리고 마지막으로, 여기에 내가 실행 해요 노드, NPM, 그리고 각도 CLI의 버전은 다음과 같습니다 : 여기

Node v6.4.0 NPM 3.10.3 angular-cli: 1.0.0-beta.11-webpack.8

을 그리고 내 angular-입니다 저는 여기에 실행 된 명령은 cli.json :

`{ 
    "project": { 
    "version": "1.0.0-beta.11-webpack.8", 
    "name": "learnloop" 
    }, 
    "apps": [ 
    { 
     "main": "src/main.ts", 
     "tsconfig": "src/tsconfig.json", 
     "mobile": false, 
     "prefix": "app", 
     "root": "src", 
     "styles": [ 
     "styles.scss" 
     ] 
    } 
    ], 
    "addons": [], 
    "packages": [], 
    "e2e": { 
    "protractor": { 
     "config": "config/protractor.conf.js" 
    } 
    }, 
    "test": { 
    "karma": { 
     "config": "config/karma.conf.js" 
    } 
    }, 
    "defaults": { 
    "styleExt": "scss", 
    "prefixInterfaces": false, 
    "lazyRoutePrefix": "+" 
    } 
}` 

나는 텍스트의 huuuuge 벽을 드려 죄송합니다,하지만 난 당신이 모든 가능성이 도움이 당신이 필요한 모든 것을 가지고 있는지 확인하고 싶었다. 여기서 내가 뭘 잘못하고 있니?

+0

현재 angular-cli로 업데이트 한 후 나에게도 동일한 문제가 발생했습니다. –

답변

1

나는 이것을 작동시킬 수 있었다. 당신의 각도-cli.json이 점을 붙여 봅니다 (따라 편집) :

{ 
    "project": { 
    "version": "1.0.0-beta.11-webpack.8", 
    "name": "<name-of-app>" 
    }, 
    "apps": [ 
    { 
     "root": "src", 
     "outDir": "dist", 
     "assets": "assets", 
     "index": "index.html", 
     "main": "main.ts", 
     "test": "test.ts", 
     "tsconfig": "tsconfig.json", 
     "prefix": "app", 
     "mobile": false, 
     "styles": [ 
     "styles.scss" 
     ], 
     "scripts": [], 
     "environments": { 
     "source": "environments/environment.ts", 
     "prod": "environments/environment.prod.ts", 
     "dev": "environments/environment.dev.ts" 
     } 
    } 
    ], 
    "addons": [], 
    "packages": [], 
    "e2e": { 
    "protractor": { 
     "config": "./protractor.conf.js" 
    } 
    }, 
    "test": { 
    "karma": { 
     "config": "./karma.conf.js" 
    } 
    }, 
    "defaults": { 
    "styleExt": "scss", 
    "prefixInterfaces": false, 
    "lazyRoutePrefix": "+" 
    } 
} 

그런 다음 루트 프로젝트 디렉토리 안에 ng init을 입력합니다. 여러 파일을 대체하거나 보관하도록 요청할 것입니다. 파일 사이에는 약간의 차이가 있는데, 특히 app.module.ts 내부에 있으므로 파일 구조와 파일 내부에 코드가 일부 변경되므로 먼저 커밋해야합니다.

+0

@Steve Star 파일은 angular-cli 현재 버전에서 생성 된 파일과 동일하지만 콘솔 출력은 계속 표시됩니다. –

1

nodejs 버전을 최신 버전 (현재 v.7.2)으로 업데이트 해보십시오. 서브가 실패했을 때 나를 위해 일했습니다

관련 문제