0

所以,我知道可以为服务器端渲染指定一个特定的 JavaScript 引擎。我似乎无法找到任何关于它的信息。这是他们的一个 Github 问题的简介,证实了这是可能的:

您是否尝试过使用 V8 引擎来运行它?MS 可能很脆弱(我们有类似的问题,但在我们的开发周期的早期阶段)。它适用于其他 3 个环境的事实意味着这些环境与第 4 个环境之间必须存在差异。例如,它可能在生产服务器上有不同版本的 IE 吗?跟踪一个棘手的问题,因此切换到 V8 可能是一个更快的选择。

https://github.com/reactjs/React.NET/issues/188

有人知道怎么做吗?我看到不同机器之间的不一致,我认为(比如,90%)原因是使用了不同的 JS 引擎。我想把它锁定,所以只有 v8 被使用,所以事情是一致的。

4

1 回答 1

0

你需要调用.SetAllowMsieEngine(false)你的 ReactJS.NET 配置。对于 ASP.NET 4,这是App_Start\ReactConfig.cs默认设置。对于 ASP.NET Core,它UseReactStartup.cs.

这将强制它使用 V8,或者如果它无法加载 V8(而不是回退到 MSIE)则抛出异常。最常见的问题ClearScript.V8bin. 对于 ASP.NET 4 站点,这应该会自动复制,但对于 ASP.NET Core,您需要手动修改构建来执行此操作(请参阅http://reactjs.net/2016/08/protected-memory-exceptions-and -dotnet-core.html )

于 2016-08-30T05:17:33.983 回答