Umu*_*acı 22 javascript angularjs
在angularjs中,我们将控制器定义为window
.虽然这不会与其他js
模块和插件创建名称冲突,但它仍然不是一个好习惯:单个应用程序应该将单个对象暴露给全局命名空间.
这是通常的方式,定义window
如下:
function UserController($scope) { ... }
Run Code Online (Sandbox Code Playgroud)
HTML:
<div ng-controller="UserController">
Run Code Online (Sandbox Code Playgroud)
这就是我的想法:
myApp.UserController = function ($scope) { ... };
Run Code Online (Sandbox Code Playgroud)
所以在这种情况下,我应该像这样从html启动控制器
<div ng-controller="myApp.UserController">
Run Code Online (Sandbox Code Playgroud)
你怎么看?
Hen*_*jie 22
其中一种方法是在Angular中定义它,例如你描述的方式.换一种说法:
angular.module('YourApp').controller('ControllerName', function($scope) {})
我已经确认上面的方法不会污染全局命名空间.
编辑:您也不需要使用,<div ng-controller="myApp.UserController">
因为您可以在属性ng-app中定义myApp:<body ng-app="myApp">
这样您就可以在不使用myApp前缀的情况下调用ng-controller.
归档时间: |
|
查看次数: |
4297 次 |
最近记录: |