我是 Angular 新手,我正在尝试(出于培训目的)编写一个转换器。
我想做的就像Google搜索页面结果上的转换器:https://www.google.com/search?q=1km+to+meter
基本上,它是将两个输入绑定(bind)在一起并在变化时进行转换。当您更新米
输入时,它会更新公里
输入,反之亦然。
目前,我使用过滤器来进行转换(因为我发现它对于这项工作来说很酷)。您可以在这里找到一个实例:http://jsfiddle.net/FMXhJ/1/
如您所见,米到公里的效果很好,但我不知道如何才能以相反的方式进行。所以看来这不是解决问题的办法。
我希望您能帮助我了解最好的解决方案。
Controller 上的一些 $watch
用于两个输入是一个好方法吗?
最佳答案
您可以只使用两个模型并在 ngChange
事件上相互更新:
或者你确实可以使用观察者:
现在,您最好通过通用转换方法和不同单位的数组来构建数据,{name: 'km',ratio: '0.001'}
将一个值转换为另一个值只是乘以适当的比率。
关于javascript - 在 AngularJs 中为转换器绑定(bind)双向两个输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21961539/