我有一个使用布局的MVC网站,
在布局页面中,我使用Angular App,模型和控制器,并且一切工作均按预期进行,在我的一个页面(显示在布局内)中,我想使用另一个具有某些基本功能的Angular App和Controller,您可以在这里看到主要思想:
Plunker for example

更多信息:


我在布局.js标记中引用了两个<head>文件:

<script src="~/Scripts/AdminVM.js"></script>
<script src="~/Scripts/ShopVM.js"></script>

我的布局页面中使用第一个App的所有代码都在两个<div>标记之间,第一个标记为ng-app = "FirstApp",第二个标记为ng-controller = "FirstController"
我都尝试过:


将两个带有<div>ng-app = "SecondApp"ng-controller = "SecondController"标记放入我的.cshtml文件中,并在我的代码之间放入。
将这两个<div>标签放入布局页面的正文中,并在它们之间推入@RenderBody()标签。



我不知道我在这里做错了什么,即使最简单的事情也不起作用:

ShopVM.js

var app = angular.module("ShopApp", []);
app.controller("ShopViewModel", function ($scope, $http) {
    $scope.test = "Test123";
});


Shop.cshtml(不是布局文件)

<div ng-app="ShopApp">
    <div ng-controller="ShopViewModel">
        <ul class="nav nav-tabs nav-justified">
            <li role="presentation" class="active"><a href="#">Home</a></li>
            <li role="presentation"><a href="#">Cat1</a></li>
            <li role="presentation"><a href="#">Cat2</a></li>
        </ul>
        <div>{{test}}</div>

        <input id="Text1" type="text" ng-model="Shop.Test"/>

    </div>
</div>


我看到的是一个简单的测试:{{test}}

我的代码有什么问题?

最佳答案

在我的一个页面(显示在布局内)中,我想使用另一个Angular App&Controller


angular不支持嵌套应用程序(因为您在布局页面中包含了第一个应用程序,因此第二个嵌套在了第一个应用程序内)

关于javascript - 无法使Angular App在MVC布局中工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34712918/

10-11 23:02
查看更多