Angularjs.获取控制器的范围.未知的提供程序错误
Angularjs. Get scope of controller. Unknown provider error
在index.html页面上,我有以下控制器声明:
<div ng-controller="UserDataController"/>
我需要这个声明,因为在我的模板中有以下代码(我知道这是一个糟糕的风格,但…):
<script>
var userData = angular.element('[ng-controller=UserDataController]').scope().userData;
...
</script>
但与此同时,我正在使用资源(REST),并拥有与此类似的代码。在我的情况下,这引发了错误:未知提供程序:dataProvider<-数据,因为我的控制器看起来像:
function UserDataController($scope,data)
{
$scope.userData = data;
}
我在这里读到,这是因为ng控制器声明。当然,当我删除这个声明时,模板中脚本标记之间的代码部分就断了。所以,我处于一个有争议的境地——当我修理一件东西时,另一件就会坏掉。。。
我不擅长js和jquery,但在我看来,最简单的方法是在没有选择器"[ng controller=UserDataController]"的情况下获得控制器范围。如何做到这一点?这是一种正确的方法吗?
提前感谢!
我认为您试图访问userData
对象完全错误。要访问userData
对象,只需在控制器范围内的页面上的某个位置执行{{userData}}
即可。例如
<div ng-app>
<div ng-controller="UserDataController">
<input type="text" ng-model="userData" />
<div ng-model="userData">User data is: {{userData}}</div>
</div>
</div>
然后是你的JS
function UserDataController($scope)
{
$scope.userData = '';
}
检查这个小提琴:http://jsfiddle.net/N4MQ4/2/
错误:
Unknown provider: dataProvider <- data....
意味着您正试图使用angular的依赖项注入来为您注入数据参数。从这个错误中,我猜没有为数据配置提供程序。因此,你看到的错误。和ronnie一样,你为什么要用的方式来做这件事似乎有点奇怪
相关文章:
- Rails第一个应用程序错误——Errno::ENOENT
- AngularJS:未知的提供程序错误
- webpack:在MacOS上很好,在linux上加载程序错误
- 获取解析值的未知提供程序错误
- React应用程序错误'未捕获的ReferenceError:React未定义'
- IE和GMap API 2包装程序错误
- 无法将节点邮件程序错误响应从节点.js发送到角度.js
- 密钥斗篷未知提供程序错误
- 谷歌浏览器扩展名$.ajax发布事件处理程序错误
- j查询动态事件处理程序错误
- 节点 JS 取消处理程序错误事件
- Chrome 扩展程序和保管箱投放保护程序错误
- 未知提供程序错误 - AngularJS 应用程序问题
- 车把自定义帮助程序错误:“options.fn 不是函数”
- 在 yeoman 中使用动画模块编译 AngularJS 应用程序会给出未知的提供程序错误
- 如何使用 JavaScript 访问 CouchDB?标准操作程序错误
- Angularjs.获取控制器的范围.未知的提供程序错误
- Kendo UI移动滚动程序错误
- Angular js:->访问解析属性时,angular引发未知提供程序错误
- 在遍历光标和更新文档时,连接因应用程序错误而关闭