Свойство Scope не доступно для ng-show - PullRequest
0 голосов
/ 05 декабря 2018

Ниже приведен простой пример моей проблемы, которая, похоже, была создана модулем AngularJS "checklist-model".Когда я устанавливаю свой oData = undefined, он должен скрывать div с помощью ng-show, но по какой-то странной причине требуется два нажатия кнопки, чтобы установить oData.Свойство oData.counties, хотя и не определено после первого нажатия кнопки, все еще остается до второго нажатия кнопки.Я предполагаю, что это связано с контрольным списком, имеющим локальную копию oData.counties в своей области, но это только предположение.И я могу только предположить, что есть хитрость, чтобы выпустить его с первой попытки.Любая помощь будет очень кстати.

Plunker теперь работает, спасибо Лекс ... это: myPlunker

Пример HTML

<div ng-controller="TestController as TestController">

    <button ng-model="showHide" ng-click="TestController.pause()">TEST</button>

    <div ng-show="TestController.oData">
        <div ng-repeat="county in Counties">

            <input type="checkbox"
                   checklist-model="TestController.oData.counties"
                   checklist-value="county.countyno" />

            {{county.countyno}} {{county.countyname}}

        </div>
    </div>
</div>

ПримерКонтроллер:

'use strict';

app.controller('TestController', ['$scope', function ($scope) {

    var _this = this; // the controller
    _this.name = "TestController";
    _this.oData = {
        "name": "harvey mushman",
        "counties": ["19", "21"]
    };

    $scope.Counties = [
        { countyname: "Lassen", countyno: 18 },
        { countyname: "Los Angeles", countyno: 19 },
        { countyname: "Madera", countyno: 20 },
        { countyname: "Marin", countyno: 21 }
    ]

    this.pause = function () {
        // debugger;
        console.log(_this.oData);
        _this.oData = undefined;
        console.log(_this.oData);
    };
}]);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...