将参数传递给同一个控制器不工作的另一个视图(离子和角度js)

时间:2017-09-09 09:53:46

标签: javascript angularjs ionic-framework state.go

我有一个视图产品,其中填充了来自控制器ProductsCtrl的数据。单击其中一个产品时,id将传递给控制器​​中的函数。

在此函数内部,调用ProductsService中的另一个函数,生成http请求。服务中的函数将响应中的数据传递给控制器​​中的函数。从那里我尝试将状态更改为另一个视图(产品详细信息),传递这些数据。

到目前为止

代码:

控制器:

$scope.gotoproduct = function (product_id) {
        console.log("the product id "+product_id); //ok

        ProductService.productdetail(product_id).then(function(data) {
           // $scope.userdata = data;
            console.log("@product detail controller funct")
            console.log(data);
            console.log("prape id -- "+product_id);
            $state.go('product_detail', {the_data: data})
        }).catch(function(errorResponse) {
            console.log('error', errorResponse);
        });

    }

服务:

service.productdetail = function(product_id){
        console.log("@product detail service funct");
        return httppostrequest($http, producturl, productdata);
    }

国家声明:

.state('product_detail', {
          url: '/products/detail',
          parent: 'app',
          params: {the_data: null},
          views: {
              'products-tab@app': {
                  templateUrl: 'templates/product.detail.html',
                  controller: 'ProductsCtrl as product'
              }
          }
      })

视图(我保持简单,只显示数据):

<ion-view view-title="{{::products.messages.title}}" >
    <ion-content>
        <div class = "card">
            <div class = "item item-avatar">
                <img src = "my-image.png">
            </div>

            <div class = "item item-body">
                <img class = "full-image" src = "my-image.png">
                Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eget
                pharetra tortor. Proin quis eros imperdiet, facilisis nisi in, tincidunt orci.
                Nam tristique elit massa, quis faucibus augue finibus ac.
            </div>
        </div>

        <p>{{product.the_data}}</p>
    </ion-content>
</ion-view>

一切都正常执行。 id传递给控制器​​,然后传递给服务。该服务发出请求并将响应正确传递给控制器​​。状态的变化和视图变化对产品细节的影响。但是没有显示数据。我的一个理论涉及角度是异步的事实。也许在数据传递之前状态发生了变化。但是我尝试放置静态数据但仍然没有显示任何内容。

0 个答案:

没有答案