python使用Zookeeper实现操作锁

今天做产品购买的时候看到之前的一些代码,核心代码如下 from kazoo.client import * from gateway import config class ZookeeperLock: def __init__(self, servers): self.zk = KazooClient(",".join(servers)) la...

阅读全文

Angular 使用@Input()检测数据变更

之前使用@Input()用于父子组件间通信,参考之前的博客。 可以做到单向绑定的效果,但不能检测传入值的变化,我这里需要根据传入值的变化改变其他值。这里介绍了@Input()的另外一种用法。@Input() 不但可以装饰变量,也能装饰get和set方法。 我这里的是要根据产品的状态来显示不同颜色提示,我们公司产品比较多,大多数都有状态显示,所以封装个通用组件。以下为基本实现。 impo...

阅读全文

angular登陆后转跳之前页面

之前做了关于登陆认证的功能,但没有实现登陆后转跳之前的url。 使用angular前后端分离后,前后的交互都是异步的,之前MVC那一套的302在这里已经不适用了。但可以借鉴之前的思想,在url中的GET参数(问号后面的值)中传递要转跳的url。 使用拦截器转跳登陆页面并携带next转跳url import { Injectable, Injector } from '@angular/...

阅读全文

Angular ng-zorro 实现图片压缩上传(附加js实现)

之前做过图片压缩上传的功能,但当时使用的是jquery/js那一套,放到angular项目中不好使,原理相同,即使用canvas绘图,然后压缩导出。 js写法 当时也是在网上找得Demo修改而来的 compress_img (file, ql, callback) { var reader = new FileReader(); reader.readAsDataURL...

阅读全文

Angular组件类的继承

在Angular实际应用当中,很多情况下不同组件会用到相同的方法或者变量,通用的功能我们可以写成单独的组件然后在其他组件调用。但通用方法和变量我们可以写一个基类来实现。 弹框我们使用ng-zorro的modal组件,使用该组件需定义isVisible和isConfirmLoading等变量控制modal的显示和loading,还有一些可以通用的方法。都可以放到基类里面,以减少代码冗余。 ...

阅读全文

Git实用命令

撤销commit消息保留修改 git reset --soft [commit_id] 暂存修改 git stash git stash apply git stash list git stash pop git stash clear 删除恢复分支 # 删除分支 git branch -d <branch_name> # 恢复分支 git branch <...

阅读全文