【问题标题】:How to pass current object inside ng-repeat to $mdDialog?如何将 ng-repeat 中的当前对象传递给 $mdDialog?
【发布时间】:2016-04-10 09:29:13
【问题描述】:

对话框应包含当前所选产品的详细信息。如何让它发挥作用?

目前这不起作用:<h2>Order: {{product.name}}</h2>

CodePen

【问题讨论】:

    标签: javascript angularjs angular-material


    【解决方案1】:

    你需要传递locals属性:

    ng-click 添加产品:

    <md-button class="md-primary md-raised" ng-click="showAdvanced($event, product)">
    

    在对话框中将其传递为locals

    $mdDialog.show({
          controller: DialogController,
          templateUrl: 'orderDialog.tmpl.html',
          parent: angular.element(document.body),
          targetEvent: ev,
          clickOutsideToClose: true,
          fullscreen: useFullScreen,
          locals:{dataToPass: product},
        })
    

    在Controller中将其分配给scope

    var mdDialogCtrl = function ($scope, dataToPass) { 
        $scope.product = dataToPass  
    }
    

    Codepen已更新

    【讨论】:

      猜你喜欢
      • 2016-11-28
      • 1970-01-01
      • 2013-08-17
      • 2017-08-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-01
      相关资源
      最近更新 更多