Angular2+AngularJS
AngularJS 系列:
1.angular.module 的定义
var mapApp = angular.module("positionSalaryEditApp",["subBase","empInfoDialogBase"]);
其中 “subBase” 是公共的基层module , "empInfoDialogBase" 是自定义的弹框控件对应的module,在此处进行调用,如果不需要引用任何东西,则直接为:var mapApp = angular.module("positionSalaryEditApp",[]);2.module 对应的factory的定义 (如果是想放到已定义的module中,放在改定义代码下即可,若分开另一个文件,则需要做以下重定义:var serviceApp = angular.module("positionSalaryEditApp");如下图代码)
var serviceApp = angular.module("positionSalaryEditApp");serviceApp.factory("positionSalaryEditService", ["$http", "$location", function ($http, $location) { // 保存 function save(positionView, callback, errorCallback){ $http.post("/sub/paas/sub/positionSalary/save.do", positionView).success(function (result) { if (callback) { callback(result); } }).error(errorCallback); }
return { save:function(setBudgetVO, callback, errorCallback){ save(setBudgetVO, callback, errorCallback); } }
}]); //factory end
3.module 对应的controller 的定义
var mapApp = angular.module("positionSalaryEditApp",["subBase","empInfoDialogBase"]);mapApp.controller("positionSalaryEditCtrl",["$scope","$http","$filter",'$location',"positionSalaryEditService",function($scope,$http,$filter,$location,commonSubService,positionSalaryEditService){ var view={ id:"", name:"" } $scope.view=view; $scope.getName=function(){ $scope.view.name="cjjuan"; }
}]); //controller end
4.html与angularJs 的双向绑定
<!------------ 对应angular.module 定义的变量---------><html ng-app="positionSalaryEditApp">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>岗位工资</title>
<!------------ 引入对应的js文件--------->
<script src="script/controllers/positionSalaryEditController.js"></script>
<script src="script/services/positionSalaryEditService.js"></script>
</head><!------------ 对应angular.module 相应的controller的变量--------->
<body ng-controller="positionSalaryEditCtrl">
<form name="positionSalaryEditForm"></form></body></html>
1. 自定义弹框
2.angularJs 自定义过滤器
在angular.module 对应的下加 filter,具体见如下代码:
var mapApp = angular.module("subApplyEditApp",["uniformCommon"]);
/**
*过滤器:取小数点后num位,且无千位符
*/
mapApp.filter("num",function(){
return function(input,num){
if(input){
var v=parseFloat(input);
return v.toFixed(num);
}else{
return "";
}
}
});
在html中调用如下:
<td>{{item.approvedTax|num:2}}</td>
在js中调用如下:
item.approvedTax=$filter('num')(123456.1234); 输出结果为 123456.12
3.自定义校验器
定义了module后,在module 变量下定义文本框输入校验器
/**
* 自定义输入校验,两位小数位的正数
*/
mapApp.directive('inputNum2',function (){
return{
restrict: "A",
require: "?ngModel",
link: function(scope, element, attrs, ngModelCtrl){
element.blur(function() {
var reg = /^(([1-9]\d*)|0)(\.\d{1,2})?$/;
var value = element.val().replace(/,/g,'');
value = value.replace(/\s+/g,"");
if(reg.test(value)){
ngModelCtrl.$setViewValue(parseFloat(value).toFixed(2));
element.val(parseFloat(value).toFixed(2));
scope.$apply();
}else if(value==""){
ngModelCtrl.$setViewValue(0.00.toFixed(2));
element.val(0.00.toFixed(2));
scope.$apply();
}else{
pms.warn("请输入正确的数量!");
ngModelCtrl.$setViewValue(0.00.toFixed(2));
element.val(0.00.toFixed(2));
scope.$apply();
}
});
}
}
});
校验器在html上的调用如下:
<input ng-model="item.applyNum" type="text" input-num2 />
Angular2环境搭建
参考微博:http://blog.csdn.net/ning0_o/article/details/52624911
官网参考:https://angular.cn/docs/ts/latest/quickstart.html
1.安装node以及其自带的npm:下载地址为https://nodejs.org/en/download/
Angular2+AngularJS的更多相关文章
- maven+eclipse+jboss+oracle 12c+memcached+AngularJS
Maven 参考梁总的: Eclipse Java EE IDE for Web Developers集成的Maven 3 指向自己安装的 Maven Maven下载.安装和配置(二) 在本地配置ma ...
- Vue, React, AngularJS, Angular2 我们对流行JavaScript框架们的选择
转自<奇舞周刊>,好文章mark一下 分割线 一个有趣的事实是:IBM发表的2017年最值得学习的编程语言名单中,JavaScript榜上有名.这位IT巨头指出,JS在网站中惊人地达到94 ...
- Vue, React, AngularJS, and Angular2. 我们对流行JavaScript框架们的选择
2017-08-04 前端大全 (点击上方公众号,可快速关注) 英文:ANTONI ZOLCIAK 译文:众成翻译 www.zcfy.cc/article/vue-react-angularjs-a ...
- 浅谈angular2与angularJS的区别
简介 大家好,今天给大家介绍一下angular,相信做过前端的小伙伴们都知道angular的大名,angularJS自2012年发布起就受到了大家的广泛关注.他首次提出了双向绑定概念让所有人都耳目一新 ...
- 浅谈Angularjs至Angular2后内置指令的变化
一.科普概要说明 我们常说的 Angular 1 是指 AngularJS: 从Angular 2 开始已经改名了.不再带有JS,只是单纯的 Angular: Angular 1.x 是基于JavaS ...
- Angular企业级开发(1)-AngularJS简介
AngularJS介绍 AngularJS是一个功能完善的JavaScript前端框架,同时是基于MVC(Model-View-Controller理念的框架,使用它能够高效的开发桌面web app和 ...
- Angular2 Hello World 之 RC6
angular2还没有发布正式版,确实有点不靠谱,变化太频繁,之前写的demo直接将js升级到最新版之后发现就不能用了……所以现在在写一篇demo——基于RC6.参考:http://web3.code ...
- Angular2 小贴士 RouterLink 导航
AngularJS的路由一直是学习的一大难点,我们只能边看边学边掌握,边看边学边推翻.今天我们来看一下在angular2中通过routerLink实现导航的几种方式,以及各自的优缺点. Angular ...
- [译]Angular2 和TypeScript -- 一次简要的预览
原文链接:https://www.infoq.com/articles/Angular2-TypeScript-High-Level-Overview 作者: Yakov Fain Posted o ...
随机推荐
- 测试使用 Open Live Writer写博客
这里测试文字的显示: 第一段 第二段 第三段 这里测试图片的显示: 这里测试视频的显示: 测试不了,是不是版权问题?
- elasticsearch(1) 安装和使用
一.简介 Elasticsearch是一个基于Apache Lucene(TM)的开源搜索引擎.无论在开源还是专有领域,Lucene可以被认为是迄今为止最先进.性能最好的.功能最全的搜索引擎库. 但是 ...
- jmeter保持登录
1.添加配置元祖---http cookie 管理器(注意上面的http cookie管理器和其他的配置是对其的) 2.这里是当你想要配置多用户并发是要配置不同的账号,配置后记得上面的第一张图的清除c ...
- Python第五章(北理国家精品课 嵩天等)
函数和代码复用 函数的定义和使用 def <函数名>(<参数(0个或多个)>): <函数体> return <返回值>可选参数放在不可选参数之后*b不定 ...
- python学习笔记3-函数
一.函数高级特性 1)列表生成式,列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式. eg: >>> list(r ...
- 闪付卡(QuickPass)隐私泄露原理
0×00 前言 说到闪付卡,首先要从EMV开始,EMV是由Europay,MasterCard和VISA制定的基于IC卡的支付标准规范.目前基于EMV卡的非接触式支付的实现有三个:VISA的payWa ...
- 将img设置成div背景图片
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 使用Axure做验证码之校验验证码(二)
本次作业,输入验证码,并校验验证码是否正确.上篇文章,介绍了如何获取验证码,本次作业在上次作业的基础上,做进一步的深究. 1.在上次作业中,增加新的元件: 文本框,命名:输入验证码: 增加热区,命名为 ...
- 在IE浏览器中url传参长度问题
1.在这之前我一直以为,应该说是并没有去思考过,url地址传参的长度限制问题:知道在项目材料价格系统中遇到之后,才对这个问题进行了具体的探索.IE中最大的长度限制为2084个,用于get传递数据的长度 ...
- 炸金花游戏(3)--基于EV(期望收益)的简单AI模型
前言: 炸金花这款游戏, 从技术的角度来说, 比德州差了很多. 所以他的AI模型也相对简单一些. 本文从EV(期望收益)的角度, 来尝试构建一个简单的炸金花AI. 相关文章: 德州扑克AI--Prog ...