未为text/ng模板计算角度表达式

Angular expression not evaluating for text/ng-template

本文关键字:计算 表达式 text ng 未为      更新时间:2024-05-12

这是示例http://codepen.io/anon/pen/ZWrNGW.

<body layout="column" ng-controller="AppCtrl">
     <script type="text/ng-template" id="save-dialog.tmpl.html">
      <md-dialog>{{message}}</md-dialog>
    </script>
    <md-button ng-click="showDialog()">
      Show Dialog</md-button>
  </body>

控制器

角度模块("铺设场地",["材料"])

.controller('AppCtrl', function($scope, $mdDialog) {
  $scope.showDialog = function() {
    $mdDialog.show({templateUrl: 'save-dialog.tmpl.html'})
  };
  $scope.message = 'This message should idsplay on dialog';
});

{{message}}的角度表达式在单击"显示对话框"按钮时不会计算text/ng模板的值,即使它是在范围中定义的。

请帮我处理这个

请确保将作用域配置为从继承,否则$mdDialog服务将创建一个新的隔离作用域,当然也不会有message属性。

正确的代码在您的情况下:

$mdDialog.show({
  templateUrl: 'save-dialog.tmpl.html',
  scope: $scope
});

您需要将作用域添加到对话框的打开位置:

$mdDialog.show({
  templateUrl: 'save-dialog.tmpl.html',
  scope: $scope
})