角度ng - 如果不起作用

时间:2017-12-19 17:26:19

标签: angularjs asp.net-mvc angular-ng-if

以下是我的观点:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    @Styles.Render("~/Content/css")
    @Styles.Render("~/Content/dropdownhover")
    @Scripts.Render("~/bundles/modernizr")
</head>
<body ng-app>
    <div class="navbar-fixed-top">
        @if (User.Identity.IsAuthenticated)
        {
            @Html.Action("_Index", "MainMenu")
        }
    </div>
    <div class="container body-content">
        @RenderBody()
        <footer class="footer navbar-fixed-bottom">
            <div ng-if="User.Identity.IsAuthenticated" style="margin:10px;">
                Hello, @ViewBag.User
            </div>
        </footer>
    </div>

    @Scripts.Render("~/bundles/jquery")
    @Scripts.Render("~/bundles/bootstrap")
    @Scripts.Render("~/bundles/dropdownhover")
    @Scripts.Render("~/bundles/angular")
    @Scripts.Render("~/bundles/bootbox")

    @RenderSection("scripts", required: false)
</body>
</html>

出于某种原因,就“角度”而言,“User.Identity.IsAuthenticated”似乎是假的或未定义的,因为我的“Hello,@ ViewBag.User”永远不可见。但是上面显示我的主菜单的“User.Identity.IsAuthenticated”工作正常。

我认为我错过了一些愚蠢的东西,但我似乎无法弄清楚是什么,因为我这样做与此处指示的另一篇文章一样。

1 个答案:

答案 0 :(得分:0)

在第二个User.Identity.IsAuthenticated

之前添加@

更正:应该是&#39; @ User.Identity.IsAuthenticated&#39; ===&#39; True&#39;

然而,Razor不喜欢ng - **所以它们应该用作数据ng-**,以防止剃刀解析那些