我是Angular2的新手。
我在导入UIRouterModule
时收到此错误,引用this
ERROR in Error遇到静态解析符号值。调用函数'UIRouterModule',不支持函数调用。考虑使用对导出函数的引用替换函数或lambda,解析/site_root/src/app/app.module.ts中的符号AppModule,解析/site_root/src/app/app.module.ts中的符号AppModule。 >
我的app.module.ts
是,
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import { RouterModule, Routes } from '@angular/router';
import { UIView, UIRouterModule } from "ui-router-ng2";
import { AppComponent } from './app.component';
import { ProfileComponent } from './profile/profile.component';
import { WidgetComponent } from './widget/widget.component';
import { DashboardComponent } from './dashboard/dashboard.component';
import { MyRootUIRouterConfig } from "./router.config";
import {MAIN_STATES} from "./app.states";
const appRoutes: Routes = [
{ path: '', component: DashboardComponent },
{ path: 'profile', component: ProfileComponent },
{ path: 'widget', component: WidgetComponent },
];
@NgModule({
declarations: [
AppComponent,
ProfileComponent,
WidgetComponent,
DashboardComponent
],
imports: [
BrowserModule,
FormsModule,
HttpModule,
RouterModule.forRoot(appRoutes),
UIRouterModule.forRoot({
states: MAIN_STATES,
otherwise: { state: 'app', params: {} },
useHash: true,
configClass: MyRootUIRouterConfig
})
],
providers: [],
bootstrap: [AppComponent, UIView]
})
export class AppModule { }
我做错了什么?
答案 0 :(得分:0)
我认为您需要使用UIRouterModule.forRoot({
UIRouterModule.forChild({
因为它是在文档中写的。
应用程序应该只使用forRoot()创建和导入单个NgModule。应使用UIRouterModule.forChild创建所有其他模块。
https://ui-router.github.io/ng2/docs/latest/classes/ng2.uiroutermodule.html
答案 1 :(得分:0)
您应该更新为ui-router-ng2
版本1.0.0-beta.4
。
1.0.0-beta.4 release包括支持提前编译的更改。这些相同的更改应解决"function calls are not supported"
错误消息。