javascript - Babel 将 JSX 翻译成 JS

标签 javascript c# reactjs babeljs

在 C# 中,我得到一个 JSX 文件作为输入,并想将其转换为 JS。我想使用 babel 库,并使用了这个指南:https://babeljs.io/docs/setup/#installation

但是,我得到了一个异常类型:

An unhandled exception of type 'React.TinyIoC.TinyIoCResolutionException' occurred in React.Core.dll

附加信息:无法解析类型:React.IReactEnvironment

对于这一行:ReactEnvironment.Current

我已经尝试创建一个新的 ASP.NET 项目,没有抛出任何异常并且一切正常。

我的问题是:如何在非 Web 项目中仍然使用 babel?

最佳答案

您需要为非 Web 应用程序运行额外的初始化步骤。 此初始化步骤在 Web 应用程序中自动完成。

如果它是一个控制台应用程序,那么使用这个函数,

        private static void Initialize()
        {
            Initializer.Initialize(registration => registration.AsSingleton());
            var container = React.AssemblyRegistration.Container;
            // Register some components that are normally provided by the integration library
            // (eg. React.AspNet or React.Web.Mvc6)
            container.Register<ICache, NullCache>();
            container.Register<IFileSystem, SimpleFileSystem>();
        }

并在main方法中调用。

查看 React.Net 的 github 控制台示例应用

Link for reference

关于javascript - Babel 将 JSX 翻译成 JS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39223720/

相关文章:

javascript - 如何防止用户在文本框中开头输入空格?

c# - 如何使用 LINQ 替换字符串中的字符

javascript - javascript如果嵌套错误,则嵌套一行 “: expected”

javascript - setState 也会改变屏幕 Prop

javascript - Web 应用程序的硬编码打印首选项

javascript - 是否有任何软件包可以让您记录 gruntfile,类似于 Node 的 apiDocs?

javascript - 使用 ES6 或 ES7 减少 if block 条件

c# - 我从哪里开始使用 C#?

c# - 具有匿名类型的 linq 表达式中的 TryGetValue()

reactjs - React 测试库和 Jest 中的模拟路由器