- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试将整数绑定(bind)到 String 属性。确切地说,我正在尝试将已发布的整数变量绑定(bind)到文本输入元素的 value 属性。
@published int 数据 = 0;
<input type="number" value="{{data}}">
int integerize(Object a) {
int ret = 0;
if (a is String) {
try {
ret = int.parse(a);
} on FormatException catch (e) {
}
} else if( a is int) {
ret = a;
}
return ret;
}
<input type="number" value="{{data | integerize}}">
最佳答案
对于 聚合物 1.0.0 这对我来说很好
创建一个可重用的行为或只添加 convertToNumeric()
到您的聚合物元素:
@HtmlImport('app_element.html')
library app_element;
import 'dart:html' as dom;
import 'package:web_components/web_components.dart' show HtmlImport;
import 'package:polymer/polymer.dart';
@behavior
abstract class InputConverterBehavior implements PolymerBase {
@reflectable
void convertToInt(dom.Event e, _) {
final input = (e.target as dom.NumberInputElement);
double value = input.valueAsNumber;
int intValue =
value == value.isInfinite || value.isNaN ? null : value.toInt();
notifyPath(input.attributes['notify-path'], intValue);
}
}
@PolymerRegister('app-element')
class AppElement extends PolymerElement with InputConverterBehavior {
AppElement.created() : super.created();
@property int intValue;
}
value
到您的属性(property):value="[[intValue]]"
因此输入元素会在属性更改时更新on-input="convertToNumeric" notify-path="intValue"
在哪里 intValue
是要使用数值更新的属性的名称。 <!DOCTYPE html>
<dom-module id='app-element'>
<template>
<style>
input:invalid {
border: 3px solid red;
}
</style>
<input type="number" value="[[intValue]]"
on-input="convertToInt" notify-path="intValue">
<!-- a 2nd element just to demonstrate that 2-way-binding -->
<input type="number" value="[[intValue]]"
on-input="convertToInt" notify-path="intValue">
</template>
</dom-module>
int _intValue;
@property int get intValue => _intValue;
@reflectable set intValue(value) => convertToInt(value, 'intValue');
@behavior
abstract class InputConverterBehavior implements PolymerBase {
void convertToInt(value, String propertyPath) {
int result;
if (value == null) {
result = null;
} else if (value is String) {
double doubleValue = double.parse(value, (_) => double.NAN);
result =
doubleValue == doubleValue.isNaN ? null : doubleValue.toInt();
} else if (value is int) {
result = value;
} else if (value is double) {
result =
value == value.isInfinite || value.isNaN ? null : value.toInt();
}
set(propertyPath, result);
}
}
<input type="number" value="{{intValue::input}}">
<input type="number" value="{{intValue::change}}">
关于data-binding - 聚合物 Dart : Data bind integer value to String attribute,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25611667/
我试图找到一些有关样式化聚合物 Dart 元素的信息,但没有成功。关于Stackoverflow的所有信息似乎均无效。有谁知道有关聚合物元素造型的一些最新信息? 我已经知道可以在哪里使用..标签。我尝
我有一个问题,我无法解决它。 我有 2 个聚合物元素嵌套。 主要 HTML 页面: index.html 在聚合物 HTML 定义中: polycontainer.html
我对 Dart 的新功能很满意。 但是,我想在 web 组件(聚合物)中使用 像这样: 文件.dart enum Categoria {ID, DESCRICAO, NATUREZA, ID_SUBC
我想遍历自定义聚合物元素的所有子元素 - 例如,将每个子元素放在一个新的 div 中。 {{child}} 当我尝试这个时,我得到了 child 的 toString() 版本
我有一个可以成功登录用户的函数。 _login: function() { var email = this.$.emailvalue.value; var password = this
当我使用 Polymer 库创建新应用程序时,它会生成一个示例项目。该项目在 Dartium 中运行良好,但当我编译它时(使用 pub build),它不再运行了。 我收到两个 404 错误和一个未捕
我尝试向一些动态创建的元素添加事件监听器,但我无法定位它们。 //here is how I try to access it _buildTable(data) { this.$.spinn
在 firebase-login 元素中我有 Login toggleLogin 调用的位置: toggleLogin: function() {this.$.loginModa
我是聚合物的新手。所以我只是按照教程。而且我不知道为什么屏幕上没有显示详细信息。 这是来自网络的代码:(指数) 第一聚
在聚合物中,我正在尝试手动提交表格。我的表格如下所示: Submit 在聚合物对象中,我有: submitForm: function(e) { e.preventDef
我正在尝试使用 Polymer 2.0 创建一个混合应用程序。我已经使用了polymer-2-application 和polymer-2-starter-kit 示例,并且在safari 浏览器上测
如何在点击时在函数内传递dom重复项?我的代码不起作用: {{item.name}} Polymer({ is: 'my-element',
如何获取iron-list中某些元素的模型?该文档建议: ($['list'] as IronList).modelForElement(target).index 但modelForElement(
我正在摆弄聚合物 Dart 0.10.0-pre.10 的"new"说明,才意识到我有包 0.9.5安装(在更新的 Dart 编辑器上)。并且只能使用 main() => dostuff(); 运行代
我正在Dart上开发我的第一个“复杂”应用程序,并且在使用多个 View 时遇到了一些麻烦(我想将应用程序开发为在单个页面中运行)。 首先,我假设此方法(使用Polymer)是处理应用程序各种 Vie
任何人都知道是否可以在 Dart 应用程序中使用常规的 html 5/javascript Web 组件库?我认为从现在开始,将会出现很多 html 5/javascript 中的 Web 组件库,它
我有以下代码。问题是我无法编辑div的内容。 div的确看起来像是一个可内容编辑的div,但它并不像它那样工作。我实际上无法编辑任何文本。我在某处犯错了吗? Content import
我正在尝试使用 Dart 和 Polymers 创建一个示例 CRUD 应用程序。 我注意到几乎所有 Dart 聚合物示例只有一页。我正在尝试寻找具有多页的样本。 IE。 屏幕包含人员对象表 然后,当
我正在尝试聚合物元素,目前正在尝试纸质表单元素。 我还没有设法找到是否可以在 Javascript 变量中获取纸质表单有效的事实。有什么想法吗? 我正在使用自动验证。 非常感谢! 最佳答案 p
我打算在 Polymer 中创建一个 classMixin,它提供自定义方法并将被其他元素继承。 一切都按预期工作,但我也想继承一些属性。 static get properties() {
我是一名优秀的程序员,十分优秀!