我正在尝试将我的JSX文件捆绑在一个asp.net核心应用程序中,但是我无法正常工作......我也在使用ReactJS.NET。目前我正在使用Cassette捆绑我的文件,我已经跟随了this guide + Cassette自己网站上的指南而没有运气。它还在指南中说,应该创建一个CassetteConfiguration.cs
- 文件,当安装React.Cassette NuGet包时 - 这没有发生,所以我创建了自己的CassetteConfiguration.cs
- 文件,它看起来像这样:
namespace ReactNewTest
{
public class CassetteBundleConfiguration : IConfiguration<BundleCollection>
{
public void Configure(BundleCollection bundles)
{
// Configure your bundles here...
// Please read http://getcassette.net/documentation/configuration
bundles.Add<ScriptBundle>("main.js", "js/tutorial.jsx", "js/guide.jsx");
}
}
}
在此之后我尝试将其发送到我的视图 - Index.cshtml
- 并且视图中的代码如下所示:
@using Cassette.Web
@using Cassette
@using Cassette.Views
@using Cassette.Aspnet
@using Cassette.BundleProcessing
@using Cassette.React
@{
Layout = null;
Bundles.Reference("main.js");
}
<html>
<head>
<title>Hello React</title>
</head>
<body>
<div id="content"></div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.3.2/react.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.3.2/react-dom.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/remarkable/1.7.1/remarkable.min.js"></script>
@Bundles.RenderScripts()
</body>
</html>
我还编辑了_ViewImports.csHtml
到这个:
@using React.AspNet
@using ReactNewTest
@using Cassette.React
@using System.Web.Optimization
@using Cassette.Views
@using Cassette
@using Cassette.Aspnet
@using Cassette.BundleProcessing
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@inject Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration TelemetryConfiguration
当我尝试运行它时,它只是给了我this NullReferenceException。
我现在已经尝试了几天让我的asp.net核心应用程序中的捆绑工作,但我无法得到任何工作...所有文档都是旧的,导致相同的教程是2年旧..
我试图捆绑asp.net核心自己的捆绑,Babel,Webpack广告现在Cassette没有得到任何工作,它让我疯狂!
我真的希望有人可以帮我解决这个问题。
答案 0 :(得分:0)
Cassette与ASP.NET Core不兼容,ASP.NET Core(https://github.com/madskristensen/BundlerMinifier)附带的bundler和minifier是不可扩展的,因此JSX编译无法添加到它中。您可以尝试使用Gulp或Webpack。