因此,我正在将ASP.NET应用程序从Razor迁移到React。
这是我目前的身体布局:
<body>
<script>
var isAuthorized = true;
</script>
@using (Html.BeginForm(null, null, FormMethod.Post, new { id = "__AjaxAntiForgeryToken" }))
{
@Html.AntiForgeryToken()
}
<div id="navBar" class="navbar navbar-expand-md navbar-dark bg-dark navbar-fixed-top" />
<div class="container-fluid contentContainer">
<div class="row">
<div id="profile" class="profileContent col-2"/>
<div class="bodyContent col-9">
@RenderBody()
</div>
<div class="col-1" id="friendList"/>
</div>
@{Html.RenderAction("Index", "Chat");}
</div>
<script type="text/javascript" src="../../wwwroot/dist/bundle.js"></script>
已经起作用的是让React在后端渲染navBar项。但是,整个部分都在它后面,所以该部分包含:
<div class="container-fluid contentContainer">
<div class="row">
<div id="profile" class="profileContent col-2"/>
<div class="bodyContent col-9">
@RenderBody()
</div>
<div class="col-1" id="friendList"/>
</div>
@{Html.RenderAction("Index", "Chat");}
</div>
在浏览器中检查完成的页面时,缺少。整个div都不会被渲染。
我知道这篇文章并没有提供很多有用的信息,但这主要是因为我不知道我可以给你什么。
我会很乐意理解为什么会这样。
答案 0 :(得分:0)
哇,我不敢相信我没有发现这一点。
问题出在
中,它使用了自动关闭的div<div id="navBar" class="navbar navbar-expand-md navbar-dark bg-dark navbar-fixed-top" />
在此元素之后,其余元素按其外观处理。