之前对黑苹果并没有认识,认为黑苹果的安装要求很苛刻。当然,现在对黑苹果的认识也很肤浅,黑苹果对硬件也确实是有要求的,但是也远远没有我之前想的那么难。最近手头多了一台联想ThinkPad系列的T460:2.4 GHz Intel Core i5-6200U、8 GB 1600 MHz DDR3、NVIDIA GeForce 940MX、256G 固态硬盘。其他具体参数可以看网上哦。
认识黑苹果首先因为mac系统只有苹果公司的mac系列电脑才用到,硬件有限,所以对应硬件的驱动也有限,所以黑苹果的安装才那么困难,因为你电脑上的硬件不一定有合适的驱动,为此,需要通过一定的手段去伪装,才导致了安装的困难性。
只要手段得当,现在的很多一部分笔记本都可以跑起黑苹果。好吧其实我就知道那么多。
阅读全文
认识XSS最近工作小组上,集中精力提高安全意识。而XSS作为全端安全中最常见的问题之一,我们也做了着重的学习。XSS全称跨站脚本(Cross Site Scripting)攻击,看起来缩写应该是CSS,但是CSS已经普遍指层叠样式表(Cascading Style Sheets),所以呼作XSS。
阅读全文
node 包管理器随着nodejs的出现,另外两个东西也进入了前端大众的视野–CommonJS规范、node 包管理器。
说到node 包管理器,就不得不提npm,毕竟是官方标配,安装了node就自带了npm。npm + nodejs,构成了一个宏伟了前端世界。当然,出于各种原因,市面上还存在着各种包管理器,比较著名的端资源包管理器 – ‘bower’;镜像为主的cnpm、tnpm;工具提供的rnpm、spm;还有很多其他的(我也没用过):jamjs、component。
今天,想向大家介绍的是yarn– 2016.10.11 Facebook 正式发布的 javascript 包管理器, 用来替代npm。我在一次偶然的升级react native的时候,接触了yarn(react native已经将自家的yarn融入安装环境中)。一遍文章《Yarn: A new package manager for JavaScript》讲述了yarn的诞生历程。
阅读全文
前端跨域前端跨域方案很多,jsonp、iframe等等,但是个人觉得,最正宗,最无损的跨域方式还是CORS。CORS(Cross-origin resource sharing)是一个W3C标准,翻译过来是跨域资源共享。它允许浏览器向跨域(协议、域名、端口任一不相同)服务器发送XMLHttpRequest请求。目前支持所有现代浏览器(>IE10)借阅了阮一峰大神的《跨域资源共享 CORS 详解》,结合自己的理解,说一说自己的CORS的领会。
简介CORS协议本身,可以说,完全是由浏览器执行的。对前端开发者而言,CORS是在浏览器检查到跨域请求的时候,自动发起的。对后台开发者而言,只要在headers中返回特定的信息(相当于白名单)–具体的CORS步骤,浏览器会根据headers中返回的信息做出具体的行为。
请求浏览器会自动将请求分为两类:简单请求、非简单请求。只要同时满足以下条件,就属于简单请求。
(1) 请求方法是以下三种方法之一:· HEAD· GET· POST(2)HTTP的头信息不超出以下几种字段:· Accept· Accept-Language· Content-Language· Last-Event-ID· Content-Type:只限于三个值application/x-www-form-urlencoded、multipart/form-data、text/plain凡是不同时满足上面两个条件,就属于非简单请求。浏览器对这两种请求的处理,是不一样的。
阅读全文
动作同步尝试用过browser-sync辅助开发的前端同学,大概都会感到神奇:在多个端打开网页,网页的动作却是完全同步的。当然我还没有看过源码,大概也知道是通过’websocket’实现信息同步。今天在看书籍《跨终端Web》–徐凯 的时候,里面有一部分 web动作同步的代码演示。于是做了demo做练习。
准备工具
koa : @1.1.2socket.io : @1.5.0
其中koa并没有什么特别意思,只是作为一个服务器存在,用express或者其他什么都可以。socket.io是我们需要的通讯库
原理1、 前端捕获正在发生的动作action,和触发动作的元素target,通过客户端socket传输到服务器socket;2、 服务器socket接收到信息,再将信息广播到其他所有客户端socket;3、 其他客户端socket接收到广播信息,使特定的元素target触发特定的动作action
阅读全文
我们需要导航栏如果一个人每天都有惊喜的话,我今天的最大惊喜就是找到了一个react-native-scrollable-tab-view。我们在写一个应用的时候,总是会有需要,将多个页面放在一屏,通过导航栏切换,如微信、淘宝这时候我们需要一个组件来帮我们快速实现这个功能。
阅读全文
体验koa之前使用nodejs开发后台服务,使用的一直是express。后来了解到express开发团队重新开发了一个框架koa。
先不说优点有什么,秉着探索的精神,先体验一下 koa
不同之处koa 中文文档
koa 给人感觉最大的不同就是,在处理流程上使用的是ES6 的 generator
generator通过yield和next的方法,使得流程清晰易见。
阅读全文
编写邮件模板最近在写业务开发的时候,需要去写邮件通知的模板。积累了一些邮箱编写经验呀呀。
邮件html编写要求邮件编写参照的是 阮一峰大神的HTML Email 编写指南
里面大致提了
使用table 布局外链除了图片全部失效css使用行内样式为佳
各邮件对css的支持
阅读全文
烂笔头 很久没有写博客了。 记得最近的实习生活都颇有收获,一直想着记下什么,当真正想写的时候,才发现什么都不记得了。 所有,上周刚刚有了一点小收获,赶紧得记下来。
情况 周一在打包一个文件的时候,打包引入后,发现文件报错了。 大致是因为我打算将关于webpack的部分整合到gulp里面的(用的是webpack-stream,我也是最近才知道,webpack-stream是gulp-webpack的进阶版),整合完成后,进行打包。 原来的打包文件是这样写的:
gulp.task('dev',function(){
//希望'webpack_test','devconcatcss','devsass'顺序执行
gulp.run('webpack_test','devconcatcss','devsass'/*,...*/);
});
我是将webpack打包放在打包列表的首位的,结果看cmd里面的打包流程序列,webpack任务最先开始,然后其他任务很快跟上(毫秒级),所有任务都完成后, webpack打包结果才出来,我意识到是控制流程有问题。而且系统提示gulp.run过旧了。于是打算修改控制流程。
阅读全文