Angular 2 RC 5 NGModule Pass Param

Angular 2 RC 5 NGModule Pass Param

问题描述:

我在做tsc时遇到了这个错误。但是,我的应用程序似乎工作。 错误TS1184:修饰符不能出现在这里。Angular 2 RC 5 NGModule Pass Param

我是从的Index.html

export function RunApplication(url:string) 
{ 
    platformBrowserDynamic().bootstrapModule(createAppModule(url)); 

} 

export function createAppModule(url:string) 
{ 
    @NgModule({ 
     ..... standard RC5 code here per docs 
    }) 
export class AppModule {} 
    return AppModule; 
} 

调用运行应用程序,我不认为你想要把模块中的功能。尝试这样的事情,而不是

@NgModule({ 
    // ..... standard RC5 code here per docs 
}) 
export class AppModule {} 


platformBrowserDynamic().bootstrapModule(AppModule); 
+0

我该如何将价值传递给来自服务器的应用程序模块? –

+0

你在谈论路由吗?如果是这样,请查看https://angular.io/docs/ts/latest/guide/router.html。如果不是,我不确定你的意思。 – jcolemang

+0

Robin正在谈论在客户端引导期间注入外部参数,并从页面/服务器传入启动值。先前记录的将传递提供者引入bootstrapModule()的技术在RC5中不起作用,并且将根模块包装到函数中似乎是一个很好的解决方法:http://stackoverflow.com/questions/38948463/passing-server-parameters-to- ngmodule-after-rc5-upgrade 但是当我尝试的时候,我得到了和OP一样的错误。对我来说,TSC(v2.0.0)拒绝传输源文件。我想知道这是不是TSC v1.8的问题 –

发现这种情况的原因: 之前“类的AppModule”的声明只是删除了“出口”修饰符,一切编译! 将静态模块声明封装到函数中后,很容易将其留下。

问题是你已经在导出函数了,所以导出函数里面没有必要,删除它应该可以解决问题。

export function createAppModule(url:string) 
{ 
    @NgModule({ 
     ..... standard RC5 code here per docs 
    }) 
    class AppModule {} 
    return AppModule; 
} 

大概要提供一些动态数据到应用程序预引导?

如前所述,问题是由班级出口造成的。删除它,错误将消失。

查看here一个合理的例子。