javascript - 在 angular js div 中使用应用程序名称不起作用

标签 javascript html angularjs

这是我的 html 和 angular js 代码

<html>
<head>
    <title></title>
    <script src="Scripts/angular.min.js" type="text/javascript"></script>
    <script type="text/javascript" language="javascript">
        function DemoController($scope) {
            $scope.user = {
                dateOfBirth: new Date(1970, 0, 1)
            }
        }
    </script>
</head>
<body>
    <div ng-app="demo" ng-controller="DemoController">
        Date Of Birth:
        <my-datepicker type="text" ng-model="user.dateOfBirth" />
        <br>
        Current user's date of birth: <span id="dateOfBirthDisplay">{{user.dateOfBirth}}</span>
    </div>
</body>
</html>

它不起作用并给出输出

    Date Of Birth: 
    Current user's date of birth: {{user.dateOfBirth}}

但是,如果我从 div 中的 ng-app="demo" 中删除 ="demo",它就可以工作...

最佳答案

当你为 ng-app 指令分配一个名称时,你实际上创建了一个具有该名称的模块。在这个模块中,您将必须定义指令、服务、过滤器和配置。

在您的例子中,当您指定名称“demo”时,您创建了一个名为“demo”的模块。函数 DemoController 现在不再是该模块的一部分。

要使用此功能并将模块分配给您的应用程序,您需要使用以下方式定义 Controller :

var app = angular.module("demo", []);

app.controller('DemoController', [function () {
    //The body of demo controller
}]);

这样,应用程序就知道哪个模块的 Controller 需要关联到相应 View 的范围。

编辑:The ng-app directive reference

关于javascript - 在 angular js div 中使用应用程序名称不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17336150/

相关文章:

AngularJS - ng-change 作为自定义指令中的选项

javascript - WinJS.xhr Post 访问被拒绝?

javascript - 使用 node.js 监听 udp 数据报

javascript - 将变量放入 css 按钮的 href 属性

angularjs - AngularStrap 选项卡加载 html 片段

javascript - 在 for 循环中的 if 内渲染事件

javascript - 检查用户是否单击邮件链接

javascript - 为什么 Javascript 不能从字符串文字中解析这个 JSON 数组?

python - 在 HTML <td> 元素中自动换行 Qt Qlabel 文本

html - powershell 可以用来点击 angularjs 按钮吗?