TL; DR: Я хочу, чтобы мои номера выглядеть (не) при вводе его в поле формы <input
(на самом деле <paper-input
или даже <iron-input
?). Similar to this example кроме полимеров, а не угловых.Polymer 1.x: как форматировать номер при вводе его в бумажный ввод?
Я хочу отформатировать номер в paper-input
(используя, например, Numeral.js), пока он вводится пользователем. Я не знаю, с чего начать и что попробовать. Я хочу получить доступ к числовому значению в JS, но я хочу, чтобы пользователь мог видеть красиво отформатированную (строковую) версию при ее вводе.
Возможно ли это? Или, возможно, мне может понадобиться отдельное поле отображения? Но тогда это победит цель paper-elements
с точки зрения UX? Любая помощь?
Кроме того, обратите внимание per the second comment on this SO question:
Стоит отметить, что
Number.prototype.toLocaleString
до сих пор не работает в Safari, в 2016 году вместо собственно форматирования числа, он просто возвращает его, не выброшен никакой ошибки. Имея самый большой facepalm сегодня в результате этого ... #goodworkApple - aendrew
Here is the jsbin. ... http://jsbin.com/wosoxohixa/1/edit?html,output
http://jsbin.com/wosoxohixa/1/edit?html,output<!doctype html>
<head>
<meta charset="utf-8">
<base href="https://polygit.org/components/">
<script src="webcomponentsjs/webcomponents-lite.min.js"></script>
<link href="polymer/polymer.html" rel="import">
<link href="paper-input/paper-input.html" rel="import">
<script src="//cdnjs.cloudflare.com/ajax/libs/numeral.js/1.4.5/numeral.min.js"></script>
</head>
<body>
<dom-module id="x-element">
<template>
<style></style>
<paper-input value="{{num}}"></paper-input>
</template>
<script>
(function(){
Polymer({
is: "x-element",
properties: {
num: {
type: Number,
value: function() {
return numeral(1500).format('0,0');
},
},
},
});
})();
</script>
</dom-module>
<x-element></x-element>
</body>
вы пытались что-то подобное связывание значение функции где вы форматируете? – a1626
Не знаете, почему все downvotes? – Mowzer