2016-07-08 2 views
1

Angular2/NodeJS :router_1.provideRouter 실행하려고 함수가 아닙니다 나는 시도하고 응용 프로그램에 대한 진입 점 페이지에 액세스 할 때 다음과 같은 오류가 발생되는 간단한 NodeJS/Angular2 응용 프로그램을 만든 응용 프로그램

router_1.provideRouter is not a function 

이 오류의 의미를 알 수없고 어디서부터 시작해야할지 모르겠습니다. 누구도 이것이 일어날 수있는 이유에 대한 통찰력이나 아이디어가 있습니까? 여기

// map tells the System loader where to look for things 
var map = { 
    'app': 'js/app', // 'dist', 
    'rxjs': 'js/vendor/rxjs', 
    '@angular': 'js/vendor/@angular' 
}; 

// packages tells the System loader how to load when no filename and/or no extension 
var packages = { 
    'app': {main: 'boot.js', defaultExtension: 'js'}, 
    'rxjs': {defaultExtension: 'js'} 
}; 

var packageNames = [ 
    '@angular/common', 
    '@angular/compiler', 
    '@angular/core', 
    '@angular/http', 
    '@angular/platform-browser', 
    '@angular/platform-browser-dynamic', 
    '@angular/router', 
    '@angular/testing', 
    '@angular/upgrade' 
]; 

// add package entries for angular packages in the form '@angular/common': { main: 'index.js', defaultExtension: 'js' } 
packageNames.forEach(function (pkgName) { 
    packages[pkgName] = {main: 'index.js', defaultExtension: 'js'}; 
}); 

var config = { 
    map: map, 
    packages: packages 
}; 

System.config(config); 

내가 오전 장소 :

{ 
    "name": "udemy-nodejs-angular2", 
    "version": "1.0.0", 
    "private": true, 
    "scripts": { 
    "start": "concurrently tsc -w && nodemon ./bin/www", 
    "vendor": "gulp vendor", 
    "gulp": "npm run vendor && gulp", 
    "postinstall": "typings install", 
    "typings": "typings" 
    }, 
    "dependencies": { 
    "@angular/common": "^2.0.0-rc.2", 
    "@angular/compiler": "^2.0.0-rc.2", 
    "@angular/core": "^2.0.0-rc.2", 
    "@angular/http": "2.0.0-rc.2", 
    "@angular/platform-browser": "^2.0.0-rc.2", 
    "@angular/platform-browser-dynamic": "^2.0.0-rc.2", 
    "@angular/router": "3.0.0-beta.2", 
    "@angular/upgrade": "2.0.0-rc.2", 
    "body-parser": "~1.13.2", 
    "cookie-parser": "~1.3.5", 
    "debug": "~2.2.0", 
    "es6-shim": "^0.35.0", 
    "express": "~4.13.1", 
    "hbs": "~3.1.0", 
    "morgan": "~1.6.1", 
    "reflect-metadata": "^0.1.3", 
    "rxjs": "^5.0.0-beta.6", 
    "serve-favicon": "~2.3.0", 
    "systemjs": "0.19.27", 
    "zone.js": "^0.6.12" 
    }, 
    "devDependencies": { 
    "concurrently": "^2.2.0", 
    "gulp": "^3.9.0", 
    "gulp-sourcemaps": "^1.6.0", 
    "gulp-typescript": "^2.10.0", 
    "nodemon": "^1.9.2", 
    "typings": "^0.8.1" 
    } 
} 

내 SystemJS의 설정 (나는 각 패키지 중 하나와 함께 할 수있는 뭔가가있을 수 있습니다 생각하고로) 여기 내 package.json 파일입니다 라우터 기능을 사용 :

가 app.routes.ts

import {provideRouter, RouterConfig} from '@angular/router'; 

import {LoginComponent} from "./components/login/login.component"; 
import {DashboardComponent} from "./components/dashboard/dashboard.component"; 


export const routes: RouterConfig = [ 
    { path: 'login', component: LoginComponent }, 
    { path: 'dashboard', component: DashboardComponent } 
]; 

export const APP_ROUTER_PROVIDERS = [ 
    provideRouter(routes) 
]; 

boot.ts :

import {bootstrap} from '@angular/platform-browser-dynamic'; 

import {AppComponent} from "./app.component"; 

import { APP_ROUTER_PROVIDERS } from './app.routes'; 

bootstrap(AppComponent, [ 
    APP_ROUTER_PROVIDERS 
]) 
.catch(err => console.error(err)); 

이 app.component.ts

import { Component } from '@angular/core'; 
import { ROUTER_DIRECTIVES } from '@angular/router'; 

@Component({ 
    moduleId: module.id, 
    selector: 'my-app', 
    templateUrl: 'app.template.html', 
    directives: [ 
     ROUTER_DIRECTIVES 
    ] 
}) 

export class AppComponent { 

} 

감사

우리가 채팅에서 발견
+0

시스템 구성을 추가 할 수 있습니까? 이것은'@ angle/router' 패키지에 대한 설정이 없을 가능성이 높습니다 – Dinistro

+0

'provideRouter' 함수를 사용하는 코드를 잊어 버렸습니다 – Dinistro

+1

원래 질문에 SystemJS 구성을 추가했습니다. – devoncrazylegs

답변

1

는, 문제는 공급 업체의 폴더에있는 라우터가 새로운 업데이트되지 않은 것이 었습니다 번역.

이 문제를 해결하려면 공급 업체 폴더 아래의 라우터를 삭제 한 다음 npm install을 실행하고 마지막으로 npm을 실행하여 공급 업체 폴더를 다시 작성해야합니다.

+1

이것을 확인할 수 있습니다. Router.json에서 라우터를 최신 버전으로 업데이트했지만 Gulp 파일을 실행하여 공급 업체 폴더를 업데이트하지 않았습니다. – devoncrazylegs

관련 문제