如何将$ scope对象注入对话框模板?

时间:2013-03-09 14:21:07

标签: javascript angularjs modal-dialog angular-ui angular-ui-bootstrap

我有这个plunker的对话框示例,该示例使用选项对象的resolve属性,基于此example
基本上我想要做的是传递要在对话框模板中使用的title变量:

var title         = "azerty";

使用对话框选项对象的resolve属性:

resolve:       {title: angular.copy(title)}

然后将其注入对话框控制器并将其分配给$ scope变量:

controllers.DialogController = function($scope, dialog, title) {
    $scope.title = title;

但是我得到了这个错误:

  

错误:未知提供者:azertyProvider< - azerty

1 个答案:

答案 0 :(得分:10)

从发布0.2.0开始 (https://github.com/angular-ui/bootstrap/blob/master/CHANGELOG.md#020-2013-03-03) 我们已经更新了解析语法,因此它遵循了使用的语法 $routeProvider。在实践中,它意味着决心中的价值 对象必须是一个函数:

resolve: {
  title: function() {
    return angular.copy(title);
  }
}

以下是工作插件:http://plnkr.co/edit/qmNUsWK7RGeAjXcANuWv?p=preview

顺便说一句,你不需要(甚至不应该)包含Bootstrap JavaScript的。该项目没有任何外部依赖项 JavaScript(在AngularJS本身旁边),所以你也不需要jQuery。