尝试从 RC4 => Angular 2.1.0 升级
var native = this.elementRef.nativeElement;
var myattr = native.getAttribute("applicationConfig");
我得到:
异常:调用 Node 模块失败并出现错误:TypeError:native.getAttribute 不是函数
我的目标是将 applicationConfig 从 MVC 端转移到 Angular。 过去我们会设置一个全局对象并通过 Angular 侧的 window['objName'] 访问它。我现在如何将我的配置传递给 Angular?我尝试过 elementRef 技巧,但似乎它在 2.1.0 中根本不起作用
<app asp-prerender-module="ClientApp/boot-server"
asp-prerender-webpack-config="webpack.config.js"
applicationConfig="@ViewBag.appConfig">Loading...</app>
我在引导组件 - AppComponent 中使用元素引用
最佳答案
当我的 ng2 应用程序启动时,我需要将一些服务器端变量传递给应用程序。这是我的 Razor View 的样子:
@ModelType MyProject.Models.MasterViewModel
<!DOCTYPE html>
<html>
<head>
<base href="/">
<script type="text/javascript" src="~/assets/js/inline.bundle.min.js"></script>
</head>
<body>
<app>Loading...</app>
<script>
var APP_SETTINGS = {
apiUrl: "@Model.ApiUrl",
ipAddress: "@Model.IpAddress",
referredFrom: "@Model.ReferredFrom",
browser: "@Model.Browser"
}
</script>
<script type="text/javascript" src="~/assets/js/main.bundle.min.js"></script>
</body>
</html>
然后,当我想引用 APP_SETTINGS 时,我会执行以下操作(在我的 ng2 应用程序的上下文中):
export interface IAppSettings {
apiUrl: string;
ipAddress: string;
referredFrom: string;
browser: string;
}
declare const APP_SETTINGS: IAppSettings;
关于javascript - Angular2如何从MVC传递应用程序配置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40113903/