1.不同scope之间的通信

(1)无父子关系的scope通信:

在需要操作的scope里面定义一个事件,名称为delete_host,参数为data

$rootScope.$on('delete_host', function(event,data) {
angular.forEach($scope.hosts, function (item, i) {
if (item.id == data) {
$scope.hosts[i].deleted = true;
}
if($scope.selected_host && $scope.selected_host.id == data){
$scope.selected_host = null;
} })
});

在需要触发该事件的scope里面触发

$rootScope.$emit('delete_host',$scope.selected_host.id);

注意为rootscope,emit

(2)父子关系下scope通信

<div  ng-controller="FatherCtrl">
<div ng-controller="ChildCtrl"> </div>
</div>

父scope里面写事件,传递参数为data

$scope.$on('change-breadcrumb', function(event,data) {
$scope.breadcrumb = Util.breadcrumb("h"+$routeParams.id,data);
});

子scope里面触发事件,注意为emit

$scope.$emit('change-breadcrumb',newValue)

子scope里面写事件,传递参数为data

$scope.$on('showdetail-storage', function(event,data) {
$scope.selected_storage = data ;
});

父scope里面触发事件,注意为broadcast

$scope.$broadcast('showdetail-storage',storage);

备注:父类向子类触发事件 用boradcast

子类向父类触发事件 用emit

2.定时任务

linux里面的cron可以实现定时任务。

crontab -e 编辑执行周期 以及执行方法
00 00 * * * python (路径)/license_day_count.py  每天00:00分执行该py文件
service crond stop 关闭服务 service crond start开启服务
/var/spool/mail/root 可查看部分信息

打开base64加密的文件,定时更新,并加密存入文件

daycountfile = open('/opt/filename"')
try:
daycountstr = daycountfile.read().strip()
daycount = int(base64.decodestring(daycountstr))
daycount = daycount - 1
file_writer = open('/opt/filename'', 'w')
file_writer.write(base64.encodestring(str(daycount)))
file_writer.close()
finally:
daycountfile.close()

3.代码冗余处理

从List<Entity>里面获取id的列表

storage_ids = [s.id for s in storages]
storage_names = [s.name for s in storages]

从LIst<JsonObj>里面获取某个属性的列表

alivenames = [s.get('storage') for s in result]

比较storage_names和alivenames ,如果后者缺少某个值,则进行某些操作

for storage in storages:
if storage.name not in alivenames:
result.append({"storage": storage.name, "name": "无"})

python , angular js 学习记录【2】的更多相关文章

  1. python , angular js 学习记录【1】

    1.日期格式化 Letter Date or Time Component Presentation Examples G Era designator Text AD y Year Year 199 ...

  2. python , angular js 学习记录【3】

    1.Alembic是SQLAlchemy作者编写的Python数据库迁移工具.用它实现模型类和数据库的同步更新.(安装以及操作步骤 使用Alembic迁移数据库) 使用Alembic添加数据库字段操作 ...

  3. 适合我胃口的angular.js学习资料

    断断续续弄了半年的ANGULAR.JS学习资料,网上下载了N多资料,测试了很多次. 现在只能算是入门,因时间问题,现在要转入其它领域. 如果以后要拾起来,下面这个PDF比较对我胃口. <Angu ...

  4. 我的three.js学习记录(二)

    通过上一篇文章我的three.js学习记录(一)基本上是入门了three.js,但是这不够3D,这次我希望能把之前做的demo弄出来,然后通过例子来分析操作步骤. 1. 示例 上图是之前做的一个dem ...

  5. 我的three.js学习记录(三)

    此次的亮点不是three.js的3d部分,而是通过调用摄像头然后通过摄像头的图像变化进行简单的判断后进行一些操作.上篇中我通过简单的示例分析来学习three.js,这次是通过上一篇的一些代码来与摄像头 ...

  6. vue.js学习记录

    vue.js学习记录 文章已同步我的github笔记https://github.com/ymblog/blog,欢迎大家加star~~ vue实例 生命周期 beforeCreate:不能访问thi ...

  7. "利用python进行数据分析"学习记录01

    "利用python进行数据分析"学习记录 --day01 08/02 与书相关的资料在 http://github.com/wesm/pydata-book pandas 的2名字 ...

  8. D3.js学习记录【转】【新】

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. angular.js学习的第一天

    第一天对angular.js进行学习,肯定是面对的入门的最简单的实例: 实现下面的这个效果,首先需要在html页面引入angular.js,在下面的div中,ng-app则表示在当前div是一个ang ...

随机推荐

  1. 查找数据库中重复的值的数据,having的使用,count(1),sum等聚会函数

    通过having代替where来使用count(1),sum()等函数.譬如如下数据id value1 21 32 33 53 6 可以写个语句统计value的分组 在这里,可以省略前面的sum(va ...

  2. ES5基础之正则表达式01:初次见面

    1.正则初次见面 测试地址:https://regexper.com 第一个正则:匹配 2006-10-11 或 2006/10/11 var reg = /^\d{4}[-/]\d{2}[-/]\d ...

  3. 用table做网页,设置了border为1px怎么还是觉得很粗?

    设置边框重叠 border-collapse:collapse;  /*边框重叠*/ 例: <table width="700" style="border-col ...

  4. 马后炮之12306抢票工具(四)--抢票Demo,2014年1月9日终结版

    时隔一年多,终于朋友的忽悠下吧抢票Demo的最后一步完善了,与2014年1月9日成功生成车票. Demo仅经过自己测试,并未在高峰期进行测试,代码质量很差,因为赶工,套用去年模板并未使用设计模式. 代 ...

  5. AppBox升级进行时 - Any与All的用法(Entity Framework)

    AppBox 是基于 FineUI 的通用权限管理框架,包括用户管理.职称管理.部门管理.角色管理.角色权限管理等模块. 属于某个角色的用户列表(Any的用法) 使用Subsonic,我们有两种方法获 ...

  6. 现阶段Mono版本下的WebAPI开发中存在的一些问题

    背景 由于公司积极推动各业务产品服务化,得益于容器化技术的不断发展及普及,项目组的服务也更多地基于Mono,Jexus,Docker,Kubernetes等类库.容器.管理工具运行于Linux系统上. ...

  7. MySQL学习

    关于MySQL学习,先推荐一个网站,资源很多.讲得很细 StudyMySQL-最好的MySQL学习网站 我的MySQL学习之旅: 1.简单了解下MySQL数据库,安装MySQL.MySQL管理工具(刚 ...

  8. oracle 表字段添加 修改 删除语法

    修改列名 alter table 表明 rename column rename 老列名 to 新列名添加 字段alter table 表名 add(字段名 类型):删除字段alter table 表 ...

  9. DevExpress.chartContro控件保存图片和打印图片

    private void pictureBox1_Click(object sender, EventArgs e) { ////实例化打印对象 PrintDocument print = new P ...

  10. poi导出的excel的数字小数位过多?

    最近在使用Apache的POI组件对Excel进行操作,在对excel导出的时候,导出的数字本来只有两位小数,得到的结果就变成了很多位小数.如下面的图所示: 虽然对单元格使用了setCellStyle ...