Отображать результаты SQL-запроса в AngularJS при использовании $ ctrl вместо $ scope - PullRequest
0 голосов
/ 14 мая 2018

Итак, у меня проблема с отображением результата SQL-запроса в AngularJS.

PHP-файл работает отлично

Template

<table id="penetration">
   <tr>
       <th>Penetration Pipe 33.1</th>
       <th>Penetration Pipe 33.2</th>
   </tr>
   <tr>
       <td>TT0101: <span class="value"></span><br/>
           TT0102: <br/>
            {{ $ctrl.TT0101Value }}
            TT0103: </td>
       <td>TT0107: </td>
    </tr>
</table>

Компонент

'use strict';
angular.module('cryostat', []).component('cryostat', {
    templateUrl: 'cryostat/cryostat.template.html',
    controller: function cryostatController($scope, $http, $q) {
        this.pageTitle = "NP04 Cryostat"
        this.natalie = 1;
        var temp1 = $http.get("cryostat/cryostat.conn.php");
        var temp2 = $http.get("cryostat/cryostat.conn.php");
        $q.all([temp1, temp2]).then(function (resultArray) {
            cryostatController.TT0101 = resultArray[0].data.records;
            cryostatController.TT0101Value = cryostatController.TT0101[0].Mnish;
            console.log(cryostatController.TT0101Value);
            console.log(cryostatController.TT0101[0].Mnish);
            // this.TT0102 = resultArray[1];
    });
    this.httpresult = $http.get("cryostat/cryostat.conn.php")
        .then(function (response) {cryostatController.resss = response.data.records;});
}
});

Проблема в том, что он пуст, т.е. ничего не отображается, пытался также использовать this.TT0101, но выдает ошибку undefined

В чем проблема?

1 Ответ

0 голосов
/ 14 мая 2018

Поцарапайте это. Сам нашел ответ.

Заменили cryostatController на self и добавили var self = this;

'use strict';
angular.module('cryostat', []).component('cryostat', {
    templateUrl: 'cryostat/cryostat.template.html',
    controller: function cryostatController($scope, $http, $q) {
        this.pageTitle = "NP04 Cryostat"
        this.natalie = 1;
        var self = this;
        var temp1 = $http.get("cryostat/cryostat.conn.php");
        var temp2 = $http.get("cryostat/cryostat.conn.php");
        $q.all([temp1, temp2]).then(function (resultArray) {
            self.TT0101 = resultArray[0].data.records;
            // this.TT0102 = resultArray[1];
    });
}
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...