小编Gre*_*Woz的帖子

ASP.NET Core 2默认路由有区域

cI经历了有关区域路由的各种帖子,但我仍然无法解决我的问题.

我想以有两条路线的方式拆分我的应用程序.

  • /Areas/Panel
  • /Areas/Website

在每个区域内都有HomeController与行动相对应的适当方法.

每当用户登陆任何1级路线时,我都希望如此:

  • /家
  • /联系
  • /约/公司
  • 等等

是针对 /Areas/Website/{controller}/{action}

或者替代

  • /面板
  • /板/家
  • /板/用户/ 2
  • 等等

/Areas/Panel/{controller}/{action}

我目前的MVC路线是:

   app.UseMvc(routes =>
        {
            routes.MapRoute(
                name: "default",
                template: "{controller=Home}/{action=Index}/{id?}");

            routes.MapRoute(
                name: "area",
                template: "{area:exists}/{controller=Home}/{action=Index}/{id?}");
        });
Run Code Online (Sandbox Code Playgroud)

但它不起作用,可能是因为我不完全理解如何告诉路由器将Website区域用作默认值.我在控制器本身之前尝试了各种指令,但它没有用.

我可以问你的意见吗?

先感谢您.

c# asp.net-routing asp.net-core-mvc .net-core asp.net-core

4
推荐指数
1
解决办法
4095
查看次数

了解 useEffect() 行为和额外的重新渲染

我正在使用以下虚拟组件进行一些测试,在执行时(在控制台中)我得到以下结果:

Rendering:  0
Triggered:  0
Rendering:  4
Triggered:  4
Rendering:  4
Run Code Online (Sandbox Code Playgroud)

我很难理解为什么。

第一个渲染:

  • 设置index0.
  • undefined按原样运行 useEffect0
  • useEffect 请求设置index4

第二次渲染:

  • index4
  • 为什么useEffect主体又被执行了?

第三次渲染:

  • 为什么会出现重新渲染?

我所期望的是:

Rendering:  0
Triggered:  0
Rendering:  4
Run Code Online (Sandbox Code Playgroud)

我是否跳过了一些非常明显的事情?您能帮我了解它的幕后工作原理吗?

Rendering:  0
Triggered:  0
Rendering:  4
Triggered:  4
Rendering:  4
Run Code Online (Sandbox Code Playgroud)
Rendering:  0
Triggered:  0
Rendering:  4
Run Code Online (Sandbox Code Playgroud)

javascript reactjs react-hooks

2
推荐指数
1
解决办法
872
查看次数