我正在开发一个Web应用程序,我正在使用reactjs和MVC c#。
我想知道jsx是否包含在cshtml中,是否可以访问jsx中的viewbag属性?我会有一个对象或id传递给jsx,它将在UI中呈现?
答案 0 :(得分:5)
ViewBag
在服务器端呈现并执行,在浏览器(客户端)上调用react
您的主要选择是:
.cshtml
)中,您可以设置全局变量
对象window.param = ViewBag.param
。从反应中获取它
const x = window.param
通过a将值(仅基元)传递给react的根元素
data-attribute
并在调用render之前抓住它:example:
// razor (.cshtml)
<div id="root" data-param="@ViewBag.param"></div>
// react
const root = document.getElementById('root');
const param = root.getAttribute('data-param');
render(<App myParam={param}/>, root)