windows下使用make

makefile在windows之外的系统中广泛使用,如果想在windows下使用makefile该怎么办呢? 下载安装GNUMAKE 下载并安装到指定目录 添加环境变量 打开我的电脑 > 系统属性 > 高级 > 环境变量,然后在PATH中添加刚才安装的GNUMAKE的目录下的bin目录,如下图 使用 现在就可以在linux下一样使用make指令了! ...

我们为什么禁用window.open

场景 在产品的设计中,常常会有这样的场景,创建一个文档,同时在浏览器的新tab中自动打开这个文档进行编辑。 常见实现 先发送ajax请求去创建文档,然后生成编辑文档的url在新tab中跳转。 $.ajax({ url: '/document/create', type: 'post' }).done(function(res, status){ var docId = res.document.id; window.open( ...

CentOS7折腾记

因为工作原因,接触到了CentOS7,学校里都是学的那些linux的内容,由于长久没有使用,已经有点生疏了。故借此机会重新拾回。这次主要做的是在Windows10操作系统中,使用Hyper-V安装一台CentOS7的虚拟机,再在虚拟机上安装Nginx。 Hyper-V安装 首先要从BIOS开启虚拟化。 然后打开到控制面板>程序>启用或关闭Windows功能,开启Hyper-V的功能。 最后,我们就可以从开始>Windows管理工具>Hyper-V管理器启动。 CentOS7的ISO镜像可以从阿里云镜像站上下载。虚拟机安装就不再赘述了,比较简单。 ...

欧洲游(下篇)

意大利 终于来到欧洲历史古国意大利了。首站佛罗伦萨~ 圣母百花大教堂 在整个广场的建筑群中最引人注目的就是教堂的中央穹顶,是世界上最大的穹顶之一。应该说所有关于佛罗伦萨的宣传图中几乎都可以看到这个标志性的教堂。 领主广场 由于靠近市政大楼,所以也叫“市政广场”。它是佛罗伦萨市的中心广场,整个广场呈L型,广场不大但是广场上确有众多雕塑精品,在众多雕塑中最有名的当属米开朗基罗的大卫了,不过这里的大卫是复制品,真迹现藏于学院美术馆里。 乔托钟楼 钟楼相当的巨大,就在圣母百花大教堂的旁边,简直就是浑然一体的建筑。 古罗马斗兽场 君士坦丁凯旋门 这座凯旋门是为庆祝君士坦丁大帝统一帝国而建立的,古罗马时期这里有21座凯旋门,现存3座, ...

欧洲游(上篇)

请了年假,跟团去欧洲走走玩玩。当然,这种多国游的团,以后也不会在跟了,路上太耗时间,大巴车坐得身心俱疲。 法国 圣心大教堂 圣心大教堂是巴黎的天主教宗座圣殿,供奉著耶稣的圣心。 至高的地理位置大半个巴黎都清楚可见。 进去参观,开包安检一定是逃不过的啦。 广场上的艺术家们~ 巴黎圣母院 巴黎圣母院,是一座哥特式风格基督教教堂,举办过各种恩典仪式、婚礼、加冕、受洗、葬礼等,代表着人们对于美好生活的向往。由于它位于巴黎市中心,真的非常挤。 ...

浮点型精度丢失问题的解决方法

问题 精度丢失的情形,大家肯定都遇到过,比如: 使用excel的时候,单元格运算会出现精度问题。 js控制台输入0.1+0.2,所得的结果就会出现精度问题。 数据库在做汇总计算的时候,得到的结果也会出现精度问题。 那么精度问题是个什么现象呢?如下图: 解决思路 在项目实践中,我们采用的方式是当数据在前端展现时,对数据做一定的处理,使得其结果正确。处理代码如下: function(value, precision) { var result ...

关于七牛CDN缓存问题的处理方式

在生产部署中,由于图片等资源文件的体积较大,容易占用掉服务器的带宽,通常我们会选择使用CDN来解决我们的问题。让CDN节点从服务器同步资源文件,然后进行分发。接下来,讲一下我自己使用CDN的一些感受。以七牛云为例。 问题 CDN的结构大致如上图。那么问题来了,我们把Bucket作为每个CDN节点的回源。既然CDN节点已经从源里同步了资源,那么如果源里的文件更新了,又如何让节点里的内容也同样更新呢?一种是主动更新,也就是缓存刷新,七牛里可以通过管理员后台进行指定路径的刷新操作,如下图: 但是这种方式,对于用户而言,仍然有本地浏览器的缓存会导致无法获取到最新的资源文件,而且这种刷新机制并不是立即可以生效的。所以我们不得不采取其他方式。七牛官方有给出一些方案, ...

从ACTIVATE-POWER-MODE认识IntelliJ IDEA的插件开发

自从网上出现了一款名叫activate-power-mode的Atom插件后,许多人都提Issue要求更多编辑器可以支持这种超炫的码字体验,可参考项目https://github.com/codeinthedark/awesome-power-mode。具体效果如下图: 但是,自从在WebStorm和IDEA上使用了这款插件后,总感觉效果还达不到自己喜欢效果。比如粒子效果的颗粒感太重,颜色单一等等,和其他编辑器的效果都有点差距,于是决定自己来尝试改造下。下载到源码后,首先要学习的就是基于IDEA的插件开发。 准备工作 下载IDEA 可前往http://www.jetbrains.com/idea/download下载。 打开插件工程 ...

基于CNPM的本地私有库搭建

原因 NPM(Node Package Manager)是一个Nodejs的包管理和分发工具。同时其本身也是一家商业公司。近期发生了一起Left-Pad事件,leftPad这个方法本身其实实现起来非常简单,就短短几行代码,当然考虑到性能最优要写好一个简单的工具方法并不是那么容易的。由于某些原因,导致leftPad这个npm的作者愤怒地unpublish了自己在npm上的所有包,而这个基础包恰恰被很多其他npm依赖着,直接就导致了Babel、ReactNative、Ember等大量工具构建失败,影响十分重大,这必然引起了广大Nodejs开发者的信心。开始质疑这种第三方包的管理方式,比如有人恶意地植入一些垃圾代码等等。 因此,企业内部一般采取搭建本地私有库来维护和管理所用到的依赖库,我们可以直接改造别人的放在内部供自己使用,也不用担心别人会unpublish的他们库导致自己的项目找不到依赖。 CNPM的私有库搭建 ...