1

有谁知道如何让我的代码工作。我正在尝试创建一个用户创建对话框并希望使用 ngResource 发送帖子数据,我已经配置了我的 PHP 后端并且它按预期工作。现在,我的问题是在对话框上附加错误,我尝试添加虚拟数据,但 ngRepeat 对我不起作用。我还尝试了调试问题的不同步骤,但对我没有任何作用。我也在研究这个问题,但没有运气。这是我的代码:

<div name="errors" id="errors" class="alert alert-error">
        <li ng-repeat="error in dialog.errors">{{ error }}</li>
</div>

尝试查看链接 http://jsfiddle.net/QCQrF/

4

1 回答 1

6

@Ryan 在您的 jsFiddle 中发生了很多事情,但最重要的问题是您指定对话框模板的方式。模板可以指定为字符串(使用template属性)或部分 ( templateUrl)。

如果您将模板移动到部分模板,您可以按如下方式指定它:

var dialogOpts = {
        backdrop: true,
        keyboard: true,
        backdropFade: true,
        backdropClick: true,
        templateUrl:  'login-dialog.html',
        controller: 'DialogCtrl',
        resolve: { dialogScope : {
          errors : ['error1', 'error2'],
          title :'Add User',
          btnTxt : 'Create User'
        }}
    };

resolve此外,IMO 使用属性而不是使用对话框的实例更容易传递要在对话框范围内公开的数据。

我已将您的小提琴转换为 plunk 以显示这一点:http ://plnkr.co/edit/iGIwPBj9zBPgX3IUwBNj?p=preview

您可能会发现 $dialog 的服务附加文档有助于进一步探索此服务:https ://github.com/angular-ui/bootstrap/blob/master/src/dialog/README.md

作为最后一句话,我注意到您正在将$event参数传递给事件处理程序(全部调用preventDefault()它们),而这是不必要的。

于 2013-01-26T17:31:39.790 回答