1

我正在使用angular-ui / bootstrap $dialog 服务

可以加载部分内部消息框吗?我会使用标题和页脚,只更改消息参数。因此,没有必要在部分模板中包含页眉和页脚。

在此示例http://plnkr.co/edit/ttobdpirZlnEQBE3LOeZ中,通过单击“味精产品”说明了我期望的行为。

4

1 回答 1

2

不,该messageBox方法旨在快速创建具有一致外观和感觉的消息框。这种方法背后的想法是,您可以快速创建类似警报的消息,这些消息在整个应用程序中具有一致的外观和感觉。

正如您所注意到的,该open方法是一个更灵活的版本,允许您使用您指定的部分创建任何模式对话框。

如果您想创建许多使用相同模板的对话框,您可以将$dialog服务包装到您自己的服务中,例如:

app.factory('productsDialog', function($dialog){
  return function(products) {    
    return $dialog.dialog({
      templateUrl: 'products.html',
      controller: 'DialogCtrl',
      resolve: {products: function() { return products; }}      
    });
  };
});

并像这样使用它:

$scope.dlgProduct = function(){
    productsDialog($scope.products).open();
  };

这是一个有效的插件:http://plnkr.co/edit/L2fd7b4y3woLDJmNiN3Y? p =preview

于 2013-03-12T13:11:50.680 回答