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 {
}
감사
우리가 채팅에서 발견
시스템 구성을 추가 할 수 있습니까? 이것은'@ angle/router' 패키지에 대한 설정이 없을 가능성이 높습니다 – Dinistro
'provideRouter' 함수를 사용하는 코드를 잊어 버렸습니다 – Dinistro
원래 질문에 SystemJS 구성을 추가했습니다. – devoncrazylegs