3

我的导航栏中有一个ng-click可以更改布尔值并显示我的 div。当我单击它时,布尔值会发生变化,但ng-show没有响应。

这个 html 在我的布局文件中,而我正在使用的控制器在我的 body html 文件中。当我将上面的 html 放在我的 body html 文件中时,整个工作正常吗?会发生什么?我从角度或其他任何地方都没有错误。我的所有脚本都包含在我的布局文件以及我的角度应用程序定义中。

布局文件中导航栏的 Html:

<div class="navbar-collapse collapse" ng-controller="MoviesCtrl">
    <ul class="nav navbar-nav">
        <li class="active"><a href="index.html"><i class="icon-home icon-white"></i> Today</a></li>
        <li ng-click="flipTwoDay()"><a><i class="icon-folder-open icon-white"></i> Two Days</a></li>
        <li><a href="manager.html"><i class="icon-folder-open icon-white"></i> All</a></li>
     </ul>
 </div>

正文文件中的 HTML:

<div ng-show="twoDay.show">
    <h1>{{tomorrow}}</h1>
    <div ng-repeat="theat in data.Locations">
        <div class="col-sm-6 col-lg-6">
            <div class="dash-unit">
                <dtitle>{{theat.Name}}</dtitle>
                <hr>
                <div ng-repeat="film in theat.Dates[tomorrow]">
                    {{film.title}}{{film.times}}
                </div>
            </div>
        </div>
    </div>
</div>

JavaScript 位于正文 cshtml 文件的底部。

mabuse.page.moviesCtrl = function ($scope, $firebase) {
    var ref = new Firebase("https://mabuse.firebaseio.com/");
    // create an AngularFire reference to the data
    var sync = $firebase(ref);
    $scope.data = sync.$asObject();
    var currentDate = new Date()
    var day = currentDate.getDate()
    var month = currentDate.getMonth() + 1
    var year = currentDate.getFullYear()
    if (day < 10) {
        dat = '0' + day
    }
    if (month < 10) {
        month = '0' + month
    }
    $scope.today = day + " " + month + " " + year;
    day += 1;
    $scope.tomorrow = day + " " + month + " " + year;
    $scope.twoDay = {show : false};
    $scope.flipTwoDay = function () {
    $scope.twoDay.show = true;
    // $scope.$digest();
    console.log($scope.twoDay.show);
};
console.log($scope.tomorrow);
};
4

0 回答 0