【发布时间】:2018-04-25 03:19:22
【问题描述】:
我在ASP.NET MVC Core 2.0 上有一个使用React Template 的应用程序。
我在服务器端的配置文件中有属性 - SiteURL。需要推送给客户TypeScript,不明白怎么做?
我试图通过放置在最后一个脚本中来推动他们抛出Home/Index 文件
SiteProps.SiteURL= "http://mysiteurl.org"
我在客户端制作
export var SiteProps: { SiteURL: string } = {SiteURL: ""};
并在启动时导入此文件
但是我看到在控制台上测试这个属性
Uncaught ReferenceError: SiteProps is not defined
我认为 JavaScript 没有从 TypeScript 上下文中看到我的属性。
问题是如何使这段代码工作,以及将 const 值(属性)推送到客户端 TypeScript 代码的最佳实践是什么。
【问题讨论】:
-
如果您是服务器端渲染或应用程序,您可以将其作为道具传递给主要组件,否则,如果没有制作 SSR,您将不得不在前端代码中对其进行硬编码.另一种方法可能是使用您的 webpack 配置来读取 web.config 并使用该值创建一个变量。
-
在服务器上仅渲染 Home/Index,我无法将值直接从 C# 推送到主组件,它基于 TypeScript 编译器和 webpack 来完成 js 脚本,所以我无法使用 razor 传递值,我认为。客户端上的硬代码是可变的,但最后一个变体,因为我不喜欢两个相同配置的地方。 Webpack 方法很有趣,但是如何?
-
我找到了一种方法。制作我需要的东西并不难。使用
div和json,请参阅我的答案。但寻找其他方式。
标签: javascript reactjs typescript asp.net-core asp.net-core-mvc