angular ng-model类型格式转化
在angular开发中我们经常会遇见输入框中的string的值,却想在scope上的model表现为整型、浮点、货币,或者在radio的value是一个true,false的Boolean类型,一组check box的vlue组成一个Array的数组类型,因为我们的后台程序的model设计接口如此。你是否还在后台应用程序或者ajax提交前做mapper,还在重复着着伪angular的做法?
在本人github创建了一个开源项目[https://github.com/greengerong/ngmodel-format](https://github.com/greengerong/ngmodel-format),为了让我们能够轻易的对付这些琐事,你可以在demo下得html或者middle way的测试中看见其使用方法,同时如果不满足你的需求,你仍然可以很简单的扩展你需要的功能:你需要的只是在你的module的run阶段注入modelFormatConfig的constant service 加入所需的key值,加上自己的formatter,parser,isEmpty方法,如果你仍然想继续深入的对用户的输入进行一些控制的话,也可以加入keyDown时间去stopPropagation,preventDefault一些key值。
下面我们看看其相应的使用方式:http://jsbin.com/uJUrANa/1/watch?html,js,output
注意由于在jsbin拒绝引入github text/plain的文件 所以这里是直接把源码贴进去了的,如果使用的话最好是使用github上的,这里的代码是不会更新的。
在jsbin demo上你能够很清楚的看见使用方式。那么我就不用在废话多说了,哈哈。有问题可以提交github issue。
angular ng-model类型格式转化的更多相关文章
- Timestame类型和String 类型的转化
Timestame类型和String 类型的转化 String转化为Timestamp: SimpleDateFormat df = new SimpleDateFormat("yyyy-M ...
- javasrcipt日期一些方法和格式转化
Js获取当前日期时间及其它操作 var myDate = new Date();myDate.getYear(); //获取当前年份(2位)myDate.getFullYear(); ...
- Java中的日期格式转化
package lianxi; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util ...
- SpringMVC返回Json,自定义Json中Date类型格式
http://www.cnblogs.com/jsczljh/p/3654636.html —————————————————————————————————————————————————————— ...
- C# Directory.GetFiles()获取多个类型格式的文件
第一种方式 System.IO.Directory.GetFiles()获取多个类型格式的文件 System.IO.Directory.GetFiles("c:\","( ...
- C/C++之类型强制转化
强制转化四种类型可能很多人都常常忽略就象我一样,但是有时还是比较有用的.不了解的建议看看,一些机制我也不是十分了解,只是将一些用法写出来让大家看看. ...
- 【JS】 JS毫秒值转化为正常格式 或者正常格式转化为毫秒值
1.毫秒值转化为正常时间格式 最简单的方法 new Date(后台传来的毫秒值).toLocaleDateString() 就是这个样子 2.毫秒值转化为自定义的时间格式 本页面重写一下 toLo ...
- Sql server 时间格式转化
--.SQL时间格式转化 --日期转换参数 ) --2009-03-15 15:10:02 ),'-',''),' ',''),':','') ) , ) --2009/03/15 ) , ) ) , ...
- [20191013]oracle number类型存储转化脚本.txt
[20191013]oracle number类型存储转化脚本.txt --//测试看看是否可以利用bc obase=100的输出解决问题.另外以前脚本忘记考虑尾数的四舍五入问题.--//也许编程就是 ...
随机推荐
- 完美解决全面屏蔽Google教程(终结者)
最近谷歌的IP被大范围的禁用了.身处一个连谷歌都用不了的过度的程序员,深感命运多舛.幸好,魔高一尺,道高一丈.下面是几种可以使用谷歌的方法. 方法一 1)在chrome浏览器中输入:chrome:// ...
- Windows 结构化异常
结构化异常不能用于需要调用对象析构函数的函数中 __try{ } __except(){ } __try{ } __finally{ }
- archlinux 安装过程记录
2014年安装了一次,使用U盘启动安装的,但是当时网络有问题,断断续续,没有做详细记录. 现在到了杭州,重新来一次. 使用U盘安装 下载ISO :http://mirrors.163.com/arch ...
- Android多线程机制和Handler的使用
参考教程:iMooc关于Handler,http://www.imooc.com/learn/267 参考资料:Google提供Android文档Communicating with the UI T ...
- linux下配置nginx使用service nginx start 服务
解压出来后执行 mkdir /var/tmp/nginx/client/ -pv 接下来我们简单的为它提供一个服务脚本吧! # vim /etc/init.d/nginx 新建文件/etc/rc.d ...
- OpenCV 学习之路(1)
OpenCV的第一个代码: #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #i ...
- 【转载】【树形DP】【数学期望】Codeforces Round #362 (Div. 2) D.Puzzles
期望计算的套路: 1.定义:算出所有测试值的和,除以测试次数. 2.定义:算出所有值出现的概率与其乘积之和. 3.用前一步的期望,加上两者的期望距离,递推出来. 题意: 一个树,dfs遍历子树的顺序是 ...
- SVN修改用户名与密码
由于在svn的界面中并没有为我们提供直接更换用户名密码的地方,所以一旦我们需要更换用户名的就需要自己想一些办法. 解决方案如下: 在Eclipse使用SVN的过程中大多数人往往习惯把访问SVN的用户名 ...
- MATLAB常用操作
1.点乘,点除,点乘方 点乘(对应元素相乘),必须同维或者其中一个是标量,a.*b 点除,a.\b表示矩阵b的每个元素除以a中对应元素或者除以常数a,a./b表示常数a除以矩阵b中每个元素或者矩阵a除 ...
- M1M2总结
这个学期很开心可以和一帮兄弟姐妹们一起做软件写代码,总体看下来真的是充满哦了艰辛和困苦.虽然我是负责软件测试的这一块的,但是看着他们辛苦的写代码我也很是为他们着急和心疼.毕竟,编译当头,数据库辅助,每 ...