javascript - 是否可以使用 ReactJS.Net 在服务器端渲染 jQuery?

标签 javascript jquery asp.net reactjs reactjs.net

我一直在经历this tutorialReactJS.NET ,并遇到了障碍。其中提到:

We will use simple polling here but you could easily use SignalR or other technologies.

虽然这在我进行客户端渲染时有效,但在渲染服务器端时会抛出以下错误。目前,我实际上并不需要 jQuery 或 SignalR 来呈现初始状态,因为我只是在应用程序运行后使用它们来订阅更新。我想我的问题是,构建我的 React 应用程序的正确方法是什么,以便我可以随意在服务器端或客户端渲染它。

An exception of type 'React.Exceptions.ReactScriptLoadException' occurred in React.dll but was not handled in user code

加载“~/Scripts/jquery-1.10.2.js”时出错:ReferenceError:窗口未定义

最佳答案

让它工作( live demo ),我只需要将调用移至 jsx 文件外部的 React.render 并传入我需要的内容(请参阅下面的代码片段)。另一种选择是尝试使用 jsdom 模拟预期的对象。 .

<!-- Render the React Component Server-Side -->
@Html.React("CommentBox", new
{
  data = Model,
  conn = false
})

<!-- Optionally Render the React Component Client-Side -->
@section scripts {
  <script src="~/Scripts/react/react-0.12.2.js"></script>
  @Scripts.Render("~/bundles/comments")
  <script>
    React.render(React.createElement(CommentBox, {
      data: @Html.Raw(Json.Encode(Model)),
      conn: $.hubConnection()
    }), document.getElementById("react1"));
  </script>
}

关于javascript - 是否可以使用 ReactJS.Net 在服务器端渲染 jQuery?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28487517/

相关文章:

javascript - 光 slider 数据拇指图像路径未使用 Eval() 从数据库绑定(bind)

javascript - 根据ajax结果提交表单

jquery - Jquery的slideDown()函数出现问题

asp.net - linq 求和与分组

javascript - 将数据属性添加到元素并从字符串动态添加值

javascript - 如何从 Admin-on-rest 框架更改过滤器的 key ?

javascript - 字符串分割问题

asp.net - Visual Studio 2008 将 asp 标签格式化为小写

c# - 如何让客户的时区偏移他的IP地址

javascript - 如何使用回调操作来自多个异步 ajax 异步调用的数据?