【问题标题】:Access a viewbag property in reactjs在 reactjs 中访问 viewbag 属性
【发布时间】:2019-04-28 14:37:11
【问题描述】:

我正在开发一个 Web 应用程序,我在其中使用 reactjs 和 MVC c#。

我想知道 jsx 是否包含在 cshtml 中,是否可以访问 jsx 中的 viewbag 属性?我将有一个对象或 id 传递给 jsx,它将在 UI 中呈现?

【问题讨论】:

    标签: javascript reactjs asp.net-mvc-4 razor


    【解决方案1】:

    ViewBag 在服务器端渲染和执行,在浏览器(客户端)上调用 react。
    您的主要选择是:

    1. 全局变量 - 在剃须刀 (.cshtml) 中,您可以设置一个全局变量 对象window.param = ViewBag.param。并通过 react 访问它。
      const x = window.param
    2. 通过 a 将值(仅限基元)传递给 react 的根元素 data-attribute 并在调用渲染之前获取它:示例:

          // 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)
      

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-09-28
      • 1970-01-01
      • 2016-02-14
      • 2013-09-27
      • 2014-04-05
      • 1970-01-01
      • 1970-01-01
      • 2020-10-13
      相关资源
      最近更新 更多