如何从控制器功能内部获取$scope
How to get $scope from inside a controller function?
>我有以下问题:我在控制器中有一个函数,该函数决定 $scope.name 的值
app.controller('myController', ['$scope', function($scope) {
function myFunction() {
$scope.name = 'myName';
}
document.getElementById('my-id').addEventListener("click", myFunction);
}])
由于多种原因,我无法使用ng-click。更新:由于照片滑动图库和社交共享,我无法使用ng-click。我想添加自定义FB共享,如果我使用ng单击,它将关闭照片擦除打开的图像。请参阅此处的示例。打开图像,然后单击左上角的自定义共享按钮
请注意,即使我在这里使用示例,它也不会将我的 $scope.name 绑定到 html。
如果我尝试记录该值,它将用作魅力,例如。
console.log($scope.name); //will work perfectly
在 html 中,它不会绑定值:
<div ng-controller="myController">
<button id="my-id">
<p>{{name}}</p>
</button>
</div>
对于主题解决方案,问题是普通事件侦听器将绕过摘要周期。这意味着您的$scope
正在更新,但 Angular 不知道,因为触发更新的事件不在 Angular 的雷达上,因此 Angular 不会更新模板。此问题的(坏(解决方案是使用$scope.$apply
强制触发摘要。
但同样,这是一个非 Angular 解决方案,如果您修复ng-click
遇到的任何问题,您会好得多。
相关文章:
- 正在获取Angular以检测$scope中的更改
- 获取Div Width,然后更新Scope Variable
- 如何使用get()获取嵌套的Scope属性
- 从Angular Scope中的Array中获取所有对象
- 在 angularjs $scope中获取数据,同时从 django 获取数据
- 如何在回调函数中获取 AngularJS 中 $scope 变量的当前状态
- AngularJS:当我已经声明$scope时,获取$scope不是定义的错误
- AngularJS:$scope.$watch 不会更新从自定义指令$resource获取的值
- 钻取$scope以获取复杂的自动完成DOM中的特定元素
- 无法从$scope获取值
- 从 JSON 获取数据并将此元素添加到变量$scope
- 获取 $scope/ngcontroller 中的元素
- 如何从控制器功能内部获取$scope
- 如何使用 angularjs 从这个$scope中获取值
- 获取$rootScope事件处理程序的$scope引用
- 从AngularJS中的服务获取数据后,如何更新$scope是最好的方法
- 在PageMod Firefox中获取Angular Scope
- 使用angular js中的另一个变量来获取$scope.x1变量
- 如何使用angularjs在函数中获取$scope值
- 在angularjs中获取$scope对象所有真值长度的最佳方法是什么