React中上传图片到qiniu(2017-05-10更新)

之前有写过类似的一篇文章,有位同学突然找来解惑,发现自己采用了另外的一个方法,这里也分享下,希望对使用reactjs的同学有帮助。逻辑思路是这样子的,在componentDidMount中实现更新dom的操作,异步加载需要的资源文件,然后在加载完后实现qiniu的初始化操作。这里就不需要在webpack或者其他打包工具中去引入qiniu的包文件,导致打完包的文件过大了。我这里使用了nodejs的库scriptjs,const$S=require('scriptjs');可以实现异步的加载文件,当然你也可以使用你认为更好的,当然也别忘记告诉我下。以下为代码实现部分:asynccomponentDidMount(){letuploadToken=await...

PHP7 新特性 学习

PHP7的新特性大概浏览下,还是能在工作的效率上有很大益处的。1,性能提升这个我就不做测试了,哈哈2,类型声明classStudent{publicfunction__construct(){$this->name='durban';}}$student=newStudent();functionenroll(Student$student,array$classes){foreach($classesas$class){echo"Enrolling".$student->name."in".$class."\n";&n...

Laravel 之 Left Join 方法使用

举例子如下:$models=static::where('user_id',$userId)->leftJoin('product_gift',function($join){$join->on('product_gift_exchange_order.prd_id','=','product_gift.prd_id');$join->on('product_gift_exchange_order.gift_code','=','product_gift.gift_code');})->orderBy('product_gift_exchange_order.autokid','DESC')->get(['product_gift_exchange_order.autokid','product_gift_exchange_order.ctime','product_gift_exchange_order.exchange_amount','product_gift.g...

sublime text 3 配置分享 - 支持retine屏幕的外设

记录分享{"always_show_minimap_viewport":true,"bold_folder_labels":true,"color_scheme":"Packages/MaterialTheme/schemes/Material-Theme.tmTheme","folder_exclude_patterns":["node_modules"],"font_face":"SourceCodeProForPowerline","font_options":["subpixel_antialias"],"font_size":16,"ignored_packages":["Vintage"],"indent_guide_options":["draw_normal","draw_active"],"line_padding_bottom":0,"line_padding_top":0,"material_theme_accent_scrollbars":true,...

sublime text 3 配置分享

sublimetext3配置分享{"always_show_minimap_viewport":true,"font_face":"SourceCodeProforPowerline","font_size":14,"bold_folder_labels":true,"color_scheme":"Packages/MaterialTheme/schemes/Material-Theme.tmTheme","ignored_packages":["Vintage"],"indent_guide_options":["draw_normal","draw_active"],"translate_tabs_to_spaces":true,"material_theme_accent_acid-lime":true,"material_theme_accent_blue":true,"material_theme_accent_brba":true,"material_theme_accent_bright-teal":true,"mat...

Git 之 ssh config 加速clone仓库代码

代码记录如下Hostgithub.comUsergitHostnamessh.github.comPort443ProxyCommandconnect-S127.0.0.1:1180%h%pHostbitbucket.orgUsergitHostnamealtssh.bitbucket.orgPort443ProxyCommandconnect-S127.0.0.1:1180%h%p操作方式是这里用到了connect这个功能,所以为了为了使用这个功能,前提是安装connectbrewinstallconnect

Git 之 用socks5加速git clone

需要使用github,但是国内访问很慢,往往会发生connectionrefused的事情发生,那就自己去弄个vpn吧。前提不要做扰乱国家安稳的事情下面记录下git的配置方法gitconfig--globalhttp.proxy'socks5://127.0.0.1:1080'gitconfig--globalhttps.proxy'socks5://127.0.0.1:1080'

Node.js 之 Koa2 添加travis ci 持续集成工具

最近使用koa2做项目测试开发,想整合下travisci,网上资料也比较少,于是自己就整了个,做个记录。先来看下travis.yml的配置language:node_jsnode_js:-"6"before_script:-./node_modules/.bin/knexmigrate:latest--knexfile='./app/knexfile.js'script:-npmruntest因为是接口测试,所以首先需要做表创建等操作。测试的命令:NODE_ENV=productionNODE_CONFIG_DIR='./app/config/'./node_modules/.bin/mocha--require'babel-polyfill'--compilersjs:babel-register./app/test/**/*.js主要是测试这里,使用了supertest,大概看下是如何...

node.js 应用性能分析

node.js从4.4.0版本开始内置了profiler,--prof命令选项运行应用会在当前目录生成性能日志文件。简单记录下使用方法运行的时候加上--prof参数nodeapp.js--prof运行后会在当前目录生成一个类似:isolate-0x1d1e1b0-v8-10041.log这样的文件执行如下命令来分析程序的性能node--prof-processisolate-0x1d1e1b0-v8-10041.log具体解析分析的结果请看参考文章参考:诊断node.js应用CPU占用过高的问题EasyprofilingforNode.jsApplications|Node.js