前言 系统自带的Dialog实际上就是Push了一个新页面,这样存在很多好处,但是也存在一些很难解决的问题 必须传BuildContext loading弹窗一般都封装在网络框架中,多传个context参数就很头疼:用fish_redux还好,effect层直接能拿到context,要是用bloc还得在view层把context传到bloc或者cubit里面... 无法穿透暗色背景,点击dialog后面的控件 这个是真头痛,想了很多办法都没在自带dialog上面解决 系统自带Dialog写成的L…
Sass团队创建了Compass大大提升CSSer的工作效率,你无需考虑各种浏览器前缀兼,只需要按官方文档的书写方式去写,会得到加上浏览器前缀的代码,如下: .row { @include display-flex; } 会得到如下代码: .row { display: -webkit-flex; display: flex; } 但是, 做为一个长期用原生CSS书写方式的CSSer,不太习惯去官方查文档,再以@include方式书写. 那么问题来了,我只能放弃高效率方式么? 其实不然, Aut…
让我们来回忆下上次你是怎么发布你的代码的: 1. 先把线上的代码用ftp备份下来 2. 上传修改了的文件 3. 测试一下功能是否正常 4. 网站500了,赶紧用备份替换回去 5. 替换错了/替换漏了 6. 一台服务器发布成功 7. 登录每一台执行一遍发布操作 8. 加班搞定 9. 老板发飙 ... 尤其现在的互联网行业,讲究快速迭代,小步快跑.像bug修复或者小功能的修改几乎每天都发版本,大功能的版本迭代每周也差不多会有一次.相信不少同行们像我上面说的这样发布自己的代码吧.或者可能先进一点,直接…
今天在项目中遇到了使用switch语句判断条件,但问题是条件比较多,大概有几十个条件,满屏幕的case判断,是否有更优雅的写法替代switch语句呢? 假设有这样的一个场景:商场经常会根据情况采取不同的打折方案,如果打折方案比较少,可以考虑使用switch语句作判断.但如果有几十甚至几百种打折方案的时候,用switch语句就不够优雅. 先来一个打折接口. public interface IValueProcessor { decimal DaZhe(short policy,decimal o…
css_scoped 与 css_module 我们知道,简单的class名称容易造成css命名重复,比如你定义一个class: <style> .main { float: left; } </style> 如果别人刚好也定义了一个className:.main,你的float:left就会影响到它. 所以Vue中发明了css_scoped,其原理就是在class名称后加上一个data属性选择器: <style scoped> .main { float: left;…
一直以来,对于MySQL root密码的忘记,以为只有一种解法-skip-grant-tables. 问了下群里的大咖,第一反应也是skip-grant-tables.通过搜索引擎简单搜索了下,无论是百度,抑或Google,只要是用中文搜索,首页都是这种解法.可见这种解法在某种程度上已经占据了使用者的心智.下面具体来看看. skip-grant-tables的解法 首先,关闭实例 这里,只能通过kill mysqld进程的方式. 注意:不是mysqld_safe进程,也切忌使用kill -9.…
有关Assert断言大家并不陌生,我们在做单元测试的时候,看业务事务复合预期,我们可以通过断言来校验,断言常用的方法如下: public class Assert { /** * 结果 = 预期 则正确 */ static public void assertEquals(Object expected, Object actual); /** * 结果 != 预期 则正确 */ static public void assertNotEquals(Object unexpected, Obje…
前言 Q:你一生中闻过最臭的东西,是什么? A:我那早已腐烂的梦. 兄弟萌!!!我又来了! 这次,我能自信的对大家说:我终于给大家带了一个,能真正帮助大家解决诸多坑比场景的pub包! 将之前的flutter_smart_dialog,在保持api稳定的基础上,进行了各种抓头重构,解决了一系列问题 现在,我终于可以说:它现在是一个简洁,强大,侵入性极低的pub包! 关于侵入性问题 之前为了解决返回关闭弹窗,使用了一个很不优雅的解决方法,导致侵入性有点高 这真是让我如坐针毡,如芒刺背,如鲠在喉,这个…
本文所有示例完整代码地址:https://github.com/yu-linfeng/BlogRepositories/tree/master/repositories/third 我们在日常开发过程中,有不少场景会对接第三方的API,例如第三方账号登录,第三方服务等等.第三方服务会提供API或者SDK,我依稀记得早些年Maven还没那么广泛使用,通常要对接第三方服务的时候会去下载第三方服务的SDK开发包,也就是jar包,拷贝到自己的工程中进行开发.但现如今,几乎所有的大中小企业都使用Maven…
你可能已经无意中听说过 Promises,很多人都在讨论它,使用它,但你不知道为什么它们如此特别.难道你不能使用回调么?有什么了特别的?在本文中,我们一起来看看 Promises 是什么以及如何使用它们写出更优雅的 JavaScript 代码. 您可能感兴趣的相关文章 开发中可能会用到的几个 jQuery 提示和技巧 精心挑选的优秀jQuery Ajax分页插件和教程 推荐几款很好用的 JavaScript 文件上传插件 精心挑选的优秀 jQuery 文本特效插件和教程 精心挑选12款优秀 jQ…
switch-case语句是我们编码过程中常用的一种分支语句.然而正所谓成也萧何败萧何,每当我们向一个已经拥有了成百上千行的switch-case代码段中添加新的case分支的时候,我们是否有过为代码的可读性和可维护性不断下降而头疼烦恼呢. 事实上,我们可以有很多方法来避免出现这种分支有多又长的switch-case代码段,从而写出更优美的代码.在.Net中我们可以非常简单地分解switch-case中的代码. 下面选择了一个比较常见的例子:模块采用switch-case来处理接收到的Comma…
使用Ibatis.Net做项目半年了,甚是喜欢,感觉确实是个简单.轻巧的O/R Mapping框架,特别是将Sql配置在Xml文件中,相当于直接将Dao层抽离了出来. 本文假定读者对Ibatis.Net有一定的了解. 最近试用了一下Ibatis.Net的亲兄弟--Java的Mybatis,一对比发现: 执行一个查询,Ibatis.Net是这么写的:IList<UserEntity> list = SqlMapper.QueryForList<UserEntity>(prefix+…
在java之前的版本里,如果希望从集合时查找符合条件的数据,如果先遍历他,这种写法是我们不能接受的,所以现在java有了lambda就很好的解决了这个问题,让代码更优雅一些! /** * lambda filter. * @param list * @param predicate * @return */ public List<User> conditionFilter(List<User> list, Predicate<User> predicate){ ret…
我们编写js代码时经常遇到复杂逻辑判断的情况,通常大家可以用if/else或者switch来实现多个条件判断,但这样会有个问题,随着逻辑复杂度的增加,代码中的if/else/switch会变得越来越臃肿,越来越看不懂,那么如何更优雅的写判断逻辑,本文带你试一下. 举个例子 先看一段代码 /** * 按钮点击事件 * @param {number} status 活动状态:1 开团进行中 2 开团失败 3 商品售罄 4 开团成功 5 系统取消 */ const onButtonClick = (s…
在使用JavaScript时,条件判断是经常会用到的,一些简单的判断条件还可以接受,当遇到比较复杂多重条件时就比较恶心了.这里使用es6的小技巧使判断更优雅. 1.使用 Arrary.includes 处理多重条件(返回布尔值 true 或 false) 比如: function test(fruit) { if (fruit == "apple" || fruit == "orange") { console.log("red"); } els…
摘要: 写代码是一门艺术. 原文:JavaScript 复杂判断的更优雅写法 作者:Think. 公众号:大转转fe Fundebug经授权转载,版权归原作者所有. 前提 我们编写js代码时经常遇到复杂逻辑判断的情况,通常大家可以用if/else或者switch来实现多个条件判断,但这样会有个问题,随着逻辑复杂度的增加,代码中的if/else/switch会变得越来越臃肿,越来越看不懂,那么如何更优雅的写判断逻辑,本文带你试一下. 举个例子 先看一段代码 /** * 按钮点击事件 * @para…
Flexbox,更优雅的布局 Flex 布局教程:语法篇 Flex 布局教程:实例篇 2009年,W3C提出了一种新的方案----Flex布局,可以简便.完整.响应式地实现各种页面布局.目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这项功能.…
JavaScript之禅已经发过两篇 Git 相关的文章了.一篇文章,教你学会Git :浅显易懂,如果你还不会 Git 可以先去看看.Git的奇技淫巧 :介绍了一些实用的操作.今天为大家带来第三篇,如何更优雅的使用 Git 写好 commit message Git 每次提交代码,都要写 Commit message,否则提交不了.我们不光得写 Commit message 而且还应该写的清晰明了,说明本次提交的目的. $ git commit -m "提交信息" 在编辑器中写comm…
DRF(Django REST framework)是一个高度封装的框架,这导致想完成一件事情可以通过重写父类函数的方式从DRF的各个层次来写,都能够实现目的. 比如写视图函数,可以用继承APIView的方式或者继承Viewsets的方式,甚至直接写视图函数 但是想要更加干净简洁的代码,还是需要找到实现的最佳方式 以下是我的一些个人总结,欢迎讨论 models.py 1.PositiveSmallIntegerField Positive对应unsigned Small对应smallint(5)…
与微信公众号看到一篇js复杂判断的文章,对我启发很大,故转到博客园以供后期不断学习并应用于项目.原文地址:https://mp.weixin.qq.com/s/ClFDRj4MnAxv1dJ5VWKSJQ 前提 我们编写js代码时经常遇到复杂逻辑判断的情况,通常大家可以用if/else或者switch来实现多个条件判断,但这样会有个问题,随着逻辑复杂度的增加,代码中的if/else/switch会变得越来越臃肿,越来越看不懂,那么如何更优雅的写判断逻辑,本文带你试一下. 举个例子 先看一段代码…
首页   登录注册         CSS 黑魔法小技巧,让你少写不必要的JS,代码更优雅 阅读 8113 收藏 927 2017-09-26 原文链接:github.com 腾讯云容器服务CSS,立即免费体验容器集群吧!cloud.tencent.com 之前不久,由于自己平时涉猎还算广泛,总结了一篇博客:这些JavaScript编程黑科技,装逼指南,高逼格代码,让你惊叹不已,没想到受到了大家的欢迎,有人希望能博主还能整理个 CSS 的一些黑魔法小技巧,无奈我 CSS 一直很渣,没什么干货,最…
写在前面 如果你不能很好的应用 Git,那么这里为你提供一个非常棒的 Git 在线练习工具 Git Online ,你可以更直观的看到你所使用的命令会产生什么效果 另外,你在使用 Git 合并分支时只会使用 git merge 吗?有时使用 git rebase 可以比 git merge 做出更优雅的操作 - - - - - Merge 与 Rebase 不知怎么,git rebase 命令被赋予了一个神奇的污毒声誉,初学者应该远离它,但它实际上可以让开发团队在使用时更加轻松. 你可以将它理解…
[前言] 大家好,我是TANZAME.出乎意料的,我们在立冬的前一天又见面了,天气慢慢转凉,朋友们注意添衣保暖,愉快撸码.距离 TZM.XFramework 的首秀已数月有余,期间收到不少朋友的鼓励.建议和反馈,在此致以深深的感谢. 不少围观的朋友经常问题我,.NET 体系下优秀的 O/RM 官方的有EF,第三方的有linq2db (国外).StackExchange/Dapper (国外).NHibernate (国外).PetaPoco (国外).Freesql (国内)等等,What's…
https://www.zhihu.com/question/21418449 Mort | Zsh vs. Bash:不完全对比解析(1) 2014-10-07  bdpqlxz     Zsh和Bash,究竟有何不同 已经有不少人写过类似“为什么Zsh比Bash好”“为什么Zsh比* shell好”的文章了,讲解如何配置Zsh或折腾各种oh-my-zsh主题的教程也是一搜一大箩,但是却极少看到Zsh和Bash这两个Shell作为脚本语言时的具体差异比较.那么,这里就是一篇,从语言特性的角度上…
前言 最近在做代码重构,发现了很多代码的烂味道.其他的不多说,今天主要说说那些又臭又长的if...else要如何重构. 在介绍更更优雅的编程之前,让我们一起回顾一下,不好的if...else代码 一.又臭又长的if...else 废话不多说,先看看下面的代码. public interface IPay { void pay(); } @Service public class AliaPay implements IPay { @Override public void pay() { Sys…
摘要:最新发布的1.3版本中,Karmada重新设计了应用跨集群故障迁移功能,实现了基于污点的故障驱逐机制,并提供平滑的故障迁移过程,可以有效保障服务迁移过程的连续性(不断服). 本文分享自华为云社区<Karmada v1.3:更优雅 更精准 更高效>,作者:云容器大未来. Karmada是开放的多云多集群容器编排引擎,旨在帮助用户在多云环境下部署和运维业务应用.凭借兼容Kubernetes原生API的能力,Karmada可以平滑迁移单集群工作负载,并且仍可保持与Kubernetes周边生态工…
友情链接 让Python更优雅更易读(第一集) 1.装饰器 1.1装饰器特别适合用来实现以下功能 运行时校验:在执行阶段进行特定校验,当校验通不过时终止执行. 适合原因:装饰器可以方便地在函数执行前介入,并且可以读取所有参数辅助校验. 注入额外参数:在函数被调用时自动注入额外的调用参数.适合原因:装饰器的位置在函数头部,非常靠近参数被定义的位置,关联性强. 缓存执行结果:通过调用参数等输入信息,直接缓存函数执行结果. 注册函数:将被装饰函数注册为某个外部流程的一部分.适合原因:在定义函数时可以直…
上一篇<让 Generator 自启动>介绍了通过起动器让 Generator 跑起来,而本篇采用 async 实现更优雅的异步编程. 从例子开始 借用上一篇例子中的例子说起. function* gen() { var r1 = yield $.get('url1'); var r2 = yield $.get('url2'); var r3 = yield $.get('url3'); console.log(r1, r2, r3); } 然后,我们需要写一个启动器来启动这个函数. 而采用…
第一种更高效,直接调用javascript引擎.…
在初中代数中,我们经常会求两个集合的并集.交集.差集等,在Java中也存在着此 类运算,那如何实现呢? 一提到此类集合操作,大部分的实现者都会说:对两个集合进行遍历,即可求出结果.是的,遍历可以实现并集.交集.差集等运算,但这不是最优雅的处理方式.下面来看看如何进行更优雅.快速.方便的集合操作. (1) 并集,(2)交集,(3)差集(补集),(4)无重复并集. 也叫做合集,把两个集合加起来即可,这非常简单,代码如下: import java.util.ArrayList; import java…