как отобразить данные $ http на странице onsen после нажатия ng на другой странице onsen - PullRequest
0 голосов
/ 07 марта 2019

У меня есть список данных о потенциальных покупателях, который я показываю на первой странице, и всякий раз, когда продавец нажимает на любой интерес, подробности о потенциальных покупателях должны показываться на другой странице, Это мой код FirstPage, все данные о потенциальных клиентах будут показываться поставщику с помощью ng-repeat, и у меня не возникнет никаких проблем, чтобы показать список данных о потенциальных клиентах

<ons-page id="leads" ng-controller="leadsController">
    <ons-toolbar>
        <div class="left"><ons-back-button>Dashboard</ons-back-button></div>
        <div class="center"></div>
    </ons-toolbar>
    <section class="bg-dashboard">
        <section class="width100" ng-if="status =='TRUE'">
            <div class="width100 ft-lt leadArea" ng-repeat="leads in final">
                <div class="width10 icon-area" ng-click="leadDetailClick(leads.lead_id)">
                  <ons-icon icon="fa-user-circle"></ons-icon>
                 </div>
                <div class="name-area">
                    {{leads.name}}
                </div>
                <div class="width40 date-area">
                    <div class="date">
                        <div class="date-position">
                            {{leads.vo_created | dateConvert | date:'longDate'}}
                        </div>
                    </div>

                </div>
                <div class="phone-area">
                    <span class="phoneNo"><ons-icon icon="fa-phone"></ons-icon> {{leads.phone}}</span>
                </div>
            </div>
        </section>
        <section class="width100" ng-if="status!='TRUE'">
            <div class="leadArea">

                <div class="width100 status-failed">
                    {{status}}
                </div>


            </div>
        </section>

    </section>
</ons-page>

Теперь, это код моей другой страницы, на которой я хочу отобразить свои данные о потенциальных клиентах. Это означает, что когда пользователь щелкает по любому потенциальному запросу, чем подробная информация о потенциальных клиентах будет отображаться на этой странице

<ons-page id="leads" ng-controller="leadsController">
    <ons-toolbar>
        <div class="left"><ons-back-button>Dashboard</ons-back-button></div>
        <div class="center"></div>
    </ons-toolbar>
    <section class="bg-dashboard">
        <section class="width100">
            <div class="width100 leadArea">
                <div class="width100">
                    <div class="img-area">
                        <ons-icon icon="fa-user-circle"></ons-icon>
                    </div>
                    <div class="usern-name">
                        {{leadMain}}
                    </div>
                    <div class="lead-date">
                        <ons-icon icon="fa-calender"></ons-icon> {{leadMain.vo_created}}
                    </div>
                </div>

                <div class="width10 icon-area">
                    <ons-icon icon="fa-user-circle"></ons-icon>

                </div>
                <div class="name-area">

                </div>
                <div class="width40 date-area">
                    <div class="date">
                        <div class="date-position">

                        </div>
                    </div>

                </div>
                <div class="phone-area">
                    <span class="phoneNo"><ons-icon icon="fa-phone"></ons-icon> </span>
                </div>
            </div>
        </section>


    </section>
</ons-page>

и это мой код контроллера angularjs, отсюда я получаю список данных о потенциальных клиентах, а также выполняю функцию ng-click, откуда я получаю данные $ http, и это работает нормально, но детали не отображаются на моем вторая страница, т.е. страница с подробным описанием

dvapp.controller('leadsController', ['$scope', '$http', function ($scope, $http,$rootScope) {
    var v = localStorage.getItem('vendor');
    var ve = JSON.parse(v);
    var leadMain, leadDetail;
    var vendorid = ve.vendor_id;
    $http.get('https://myapi.com/api/getVendorLeadList/' + vendorid)
        .then(function successCallBack(response) {
            $scope.myLeads = JSON.stringify(response.data);
            $scope.data = JSON.parse($scope.myLeads);
            if ($scope.data.hasOwnProperty('status'))
            {
                $scope.status = "Sorry You Don't have any leads";
            }
            else
            {
                $scope.status = "TRUE";
                $scope.final = JSON.parse($scope.myLeads);
            }
        });

    $scope.leadDetailClick = function (leadid) {
       document.querySelector('#loginNavigator').pushPage('vendor/leadDetail.html', { data: { title: 'Lead Detail' } });
       $http.get('https://myapi.com/api/getVendorLeadDetail/' + vendorid + '/' + leadid)
           .then(function successCallBack(response) {
                 $scope.leadMain = response.data.main;
                 $scope.leadDetail = response.data.detail;
           });

    };

}]);

Теперь моя проблема в том, что все работает нормально, например firstPage. Загрузите правильно, когда все потенциальные клиенты получают от поставщика, все в порядке, и нажмите ng-click, где я передаю запрос, когда загружается другая страница, которая также работает нормально. но данные $ scope.leadMain не отображаются на моем secondPage, пожалуйста, помогите мне, где я делаю не так

...