外部文件中的Angular不起作用

时间:2018-05-30 01:20:16

标签: javascript asp.net angularjs

为了便于理解,我做了两个例子,其中一个有效,另一个没有。

第一个是html页面内的脚本内容,它运行正常。

        <html ng-app>
          <head>
              <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
          </head>
          <body>
            <input type="text" ng-model="helloAngular" />
            <h1>{{helloAngular}}</h1>
          </body>
        </html>

这是无效的代码部分(在同一个html页面内):

        <div ng-app="app">
            <p>Try to change the names.</p>
            <div ng-controller="personController">
                <p>
                    First Name:
                    <input type="text" ng-model="firstName" />
                </p>
                <p>
                    Last Name:
                    <input type="text" ng-model="lastName" />
                </p>
                <p>
                    Full Name:
                    {{firstName}} {{lastName}}
                </p>
            </div>
        </div>

这是js文件:

angular.module("app", []).controller("personController", function ($scope) {
    $scope.firstName = "John";
    $scope.lastName = "Doe";
});

编译后看起来像这样:

It looks like this

javascript文件正确包含在html中(我试过$(document).ready())。当然,对于第二个例子,我从html标签中删除了ng-app属性。

还尝试清除cookie和缓存,但没有成功。其他浏览器也会发生同样的事情。

我正在将Angular文件用于其他应用程序功能,而且它们都不再起作用了。当我打开文件并将新控制器添加到现有应用程序模块时,它停止工作。可以肯定的是,我在新的.js文件中尝试了上面的例子,并尝试在所提到的角度文件中注释掉所有以前的角度代码。

编辑1。

好的,我在html中内嵌复制/粘贴角度代码,但仍然没有运气。

        <script type="text/javascript">
            angular.module("app", []).controller("personController", [$scope, function ($scope) {
                $scope.firstName = "John";
                $scope.lastName = "Doe";
            }]);
        </script>


        <div ng-app="app">
            <p>Try to change the names.</p>
            <div ng-controller="personController">
                <p>
                    First Name:
                    <input type="text" ng-model="firstName" />
                </p>
                <p>
                    Last Name:
                    <input type="text" ng-model="lastName" />
                </p>
                <p>
                    Full Name:
                    {{firstName}} {{lastName}}
                </p>
            </div>
        </div>

使用@BarouchKandov plunker项目我重新创建了问题,它在plunker项目下工作,但是同一段代码在我的ASP.NET项目中不起作用。

Plunker project

我还尝试删除[$ scope,...]括号

0 个答案:

没有答案