1

这是我第一次使用 ReactJS.NET,所以如果这是一个愚蠢的问题,请原谅。我正在努力为我的 ASP.NET ReactJS 应用程序中的路径映射的声明性方法找到解决方案。

我的一个烦恼是,假设我在 ASP.NET MVC 控制器中声明了一个 API,如下所示:

public class FooBarController : Controller
{
    public ActionResult Foo(int bar)
    {
        return Json(new
        {
            bar = bar
        }, JsonRequestBehavior.AllowGet);

    }
}

现在我想在我的 ReactJS JSX 文件中使用它,做这样的事情:

componentDidMount: function () {
    var bar = 10;
    axios.get('/FooBar/Foo/' + bar).then(response => {
        //console.log(response.bar) == 10;
    });
}

但我不想使用像“'/FooBar/' + bar”这样的魔术字符串,而是想要某种声明性的方式来编写我的 API 路由。所以基本上是这样的:

axios.get(MyServices.FooBar.Foo).then(response => {
    //console.log(response.bar) == 10;
});

但我想自动生成MyServices类中的变量。我最关心的是编译时检查路由 url 是否正确(换句话说,如果我更改控制器或方法名称,理想情况下我希望得到一个编译时错误)

我认为这react-router可能是我正在寻找的东西,但它看起来更像是一个使用 url 的状态管理系统。我已经搜索过,但似乎找不到合适的术语。

显然,我知道有很多方法可以让我自己实现这个最终结果,但我确信必须存在一些东西来解决这样一个常见的问题。

4

0 回答 0