Javascript 角度-单击后无法更改范围值

Javascript 角度-单击后无法更改范围值,javascript,angularjs,Javascript,Angularjs,我的模板中有以下代码: <div ng-if="selectedTheme.count_of_cards == 0" class="jumbotron" ng-controller="ThemesCtrl"> <h1>{{ 'THERE_IS_NO_CARD' | translate }}</h1> <p> <a href="" ng-click="initEmptyTheme()" class="btn bt

我的模板中有以下代码:

<div ng-if="selectedTheme.count_of_cards == 0" class="jumbotron" ng-controller="ThemesCtrl">
    <h1>{{ 'THERE_IS_NO_CARD' | translate }}</h1>
    <p>
        <a href="" ng-click="initEmptyTheme()" class="btn btn-primary btn-lg" role="button">{{ 'ADD_CARD' | translate }}</a>
    </p>
</div>
编辑:

我还尝试:

  $timeout(function() {
                $scope.displayedTemplate = "default";
                console.log("Meow");
            });

但什么都不管用

我尝试在有超时和无超时的情况下调用该方法,并应用和处理控制台日志,但作用域并没有更改为默认值,仍然是空值

请问有什么问题


谢谢您的帮助。

删除您的$scope。$apply,因为您使用$timeout服务,请调用$scope。$apply导致错误,并且您的代码未执行。它不工作,我以前尝试过,请参阅我的更新问题。它不工作:您的控制台日志中是否有错误,您是使用某种工具检查作用域,还是变量绑定在页面的某个位置而不更新?变量绑定在页面的某个位置而不更新我发现它是由模板中的控制器重新初始化引起的。因此它创建了新的范围。
  $timeout(function() {
                $scope.displayedTemplate = "default";
                console.log("Meow");
            });
$scope.$apply(function() {
                    $scope.displayedTemplate = "default";
                    console.log("Maau");
                });