dart - 如何在 PolymerElement 中捕获数据类型不匹配异常?

标签 dart dart-polymer

我创建了一个自定义标签 x-account,其属性余额为 double 类型。当用户输入非数字数据到数量时抛出此异常。

Uncaught Error :评估表达式“余额”时出错:“字符串”类型不是“值”的“双”类型的子类型。

@CustomTag('x-account')
class XAccount extends PolymerElement {
     @published double balance;
     ...
}

<template>
    <input id="account-amount" type="number" value="{{balance}}" autocomplete="off"/>
</template>

如何在 XAccount 中捕获此异常?

最佳答案

您可以将您的字段更改为 getter/setter

double _balance;
@published 
double get balance => _balance;
set balance(value) {
  if(value == null) {
    _balance = null; // or _balance = 0;
  }
  if(value is String) {
    _balance = double.parse(value)
  }
}

这样,您可以包装可能会抛出 try 的赋值或语句。/catch堵塞。

聚合物 1.0 见 Polymer dart: Data bind integer value to String attribute

关于dart - 如何在 PolymerElement 中捕获数据类型不匹配异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29578852/

相关文章:

android - 如何在flutter中将Json值转换为List<String>

dart - webcomponents.js 失败并出现错误 404

dart - 在列表上创建一个监听器以进行更改

list - Dart可观察 list 已移除项目

Dart eclipse-plugin 找不到更新站点

ios - 我应该为 Flutter 插件传入我的 Swift native 代码中的哪个 View Controller ?

flutter - 如何在 Flutter 中创建数字输入字段?

android - 如何在 Flutter 中使用原生资源?

dart - 标签内的Google Dart页面

dart - 你如何在 Dart 中创建自定义的霓虹动画