AngularJS-控制器中的指令更改值出现故障

AngularJS-控制器中的指令更改值出现故障,angularjs,angularjs-directive,angularjs-scope,Angularjs,Angularjs Directive,Angularjs Scope,我从主控制器中的API获取大图像 我有一个指令,成功地让我知道何时加载每个图像: app.directive('imageonload', function() { return { controller: "mainController", restrict: 'A', link: function(scope, element, attrs) { element.bind('load', function() {

我从主控制器中的API获取大图像

我有一个指令,成功地让我知道何时加载每个图像:

app.directive('imageonload', function() {
    return {
        controller: "mainController",
        restrict: 'A',
        link: function(scope, element, attrs) {
            element.bind('load', function() {   
                alert("loaded");
            });
        }
    };
});
我用一个简单的

$scope.loading = true;
在我的主控制器中

如果我在指令中将加载设置为false(替换警报),它似乎只影响子范围,而不会影响父范围(根据Batarang扩展)

我包括:

scope: {
        loading: '@'
},
在我的指令中,但它仍然没有删除加载屏幕

这是我的HTML:

<div class="images" imageonload loading="loading">


我做错了什么?谢谢。

@
设置单向数据绑定。因此,如果父母改变,孩子也会改变,但不是相反

使用
=
将提供双向绑定。因此,当指令更改
加载
时,该更改将反映在父范围上

因此,你想要:

scope: {
   loading: '='
},