javascript - 在 Controller 抛出的 index.html 中显示错误消息

标签 javascript angularjs error-handling

我正在尝试通过按下相关按钮来实现优惠券系统,如果用户不符合折扣条件,我希望它在页面上显示唯一的错误消息。

    <tr name="vouchers">
  <td>
    <button type="button" class="btn" id="five-pound-voucher" ng-click="ctrl.addFiveVoucher()">£5 off voucher
    </button>
    <button type="button" class="btn" id="ten-pound-voucher" ng-click="ctrl.addTenVoucher()">£10 off voucher
    </button>
    <button type="button" class="btn" id="fifteen-pound-voucher" ng-click="ctrl.addFifteenVoucher()">£15 off voucher
    </button>
  </td>
  <td></td>
  <td>DISPLAY ERROR MESSAGE HERE</td>
  <td></td>
  <td></td>

我的折扣方法与此类似:

self.addFifteenVoucher = function() {
    if(self.subTotalPrice >= 75  && self.containingShoes) {
        self.fifteenPoundVoucher = true;
        self.setTotal();
    }
    else {
        throw new Error("Not Eligible for £15 discount")
    }
}

有没有办法在不使用 flash 消息或 jquery 的情况下以 Angular 显示此错误消息。 ng-message 似乎不适合使用。任何帮助将不胜感激!

最佳答案

我会将错误推送到 Controller 端的数组中并像这样显示它:

<div class="alert alert-danger" ng-show="validationErrors.length">
  <ul>
    <li ng-repeat="error in validationErrors">
    {{error}}
    </li>
  </ul>
</div>

关于javascript - 在 Controller 抛出的 index.html 中显示错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30893411/

相关文章:

angularjs - 带有 ui-router 的 Angular 1.5 组件解析 : Unknown provider

javascript - jQuery .remove() 在使用 .prepend() 后不起作用

javascript - 使用 npm 让 ng-bootstrap 用于 Angular cli 元素

javascript - AngularJS - ng-repeat 出现问题

sql - 消息 203,级别 16,状态 2,不是有效标识符

node.js - ExpressJS 和中间件中的域错误处理

java - Spring AccessDeniedException 中的自定义消息

javascript - Rails API - 移动应用程序状态文本错误

javascript - 将区间数转换为浮点变量

javascript - 使用 Angular 更改隐藏/可见