首页 > 解决方案 > 使用脚本与 .core 反应的正确方法

问题描述

我试图弄清楚如何在我的 .core React 项目中使用 package.json 中的脚本。

这是它的样子:

 "scripts": {
    "start": "rimraf ./build && react-scripts start",
    "build": "react-scripts build",
  },

如果我想添加自定义脚本怎么办?例如,如果我想要一个名为“内部”的新脚本。

在脚本标签中添加它的正确方法是什么?我应该更改 .core Startup 类中的某些内容吗?我的意思是如果我没有在某个地方定义它,应用程序怎么知道要运行哪个脚本?

更新:我已经从 .core 启动添加了脚本,但是在尝试这个时我只收到内部服务器错误(500)。

            app.UseSpa(spa =>
            {
                spa.Options.SourcePath = "ClientApp";

                if (env.IsDevelopment())
                {
                    spa.UseReactDevelopmentServer(npmScript: "start");
                }
                else if (env.IsStaging())
                {
                    spa.UseReactDevelopmentServer(npmScript: "internal");
                }
            });

如果您需要更多信息。请告诉我。

标签: reactjsasp.net-core.net-core

解决方案


在 package.json 中定义你的新脚本:

"scripts": {
    "start": "rimraf ./build && react-scripts start",
    "build": "react-scripts build",
    "internal": "(do something here)",
  },

看起来您正在使用ReactDevelopmentServerMiddlewareExtensions,因此您spa.UseReactDevelopmentServer()需要一个npmScript参数来检查该 package.json 文件并运行它在那里找到的命令。


更新:是的,所以您更新的代码看起来在.net端正确设置,您只需要在其中编写相应的脚本package.json


推荐阅读