目前要开发一个小程序项目,领导要我上手直接就是Taro,语法基本是React的语法(可叹我是个vue爱好者,以前只是用过RN[0.43]版本,目前都0.59版本了),开发起来比原生的效率要高一点, Taro——一套遵循 React 语法规范的多端统一开发框架
框架名称 | github-stars | UI框架 | 语法 | 研发团队 |
---|---|---|---|---|
Taro | 18k | Taro-ui | React语法 | 京东 |
uni-app | 7k | uni-app插件 | Vue语法 | DCloud |
mpvue | 17k | mpvue-weui | Vue语法 | 美团 |
Chameleon | 12k | Chameleon-ui | 小程序语法 | 滴滴 |
从对比stars看Taro优点比较大,从社区群体上看uni-app在开发这块仍是颇有潜力的,毕竟一直都在更新中,而且已有现有的开发工具
这是掘进上对比的Taro和uni-app的文章,有对比目前所流行的框架支持度以及生态如何html
canvasToTempFilePath: fail canvas is empty
点击canvas按钮我请求一张网络图片,一直抛这个异常,查阅文章,网上基本都是小程序生成图片,不多有关于Tarovue
代码以下-采坑react
wxDrawImage(){ let that = this; var canvas = Taro.createCanvasContext('shareCanvas',this) canvas.drawImage('https://www.vipbic.com/template/default/public/img/logo.png',0,0,this.state.canvasWidth,this.state.canvasWidth * 1.5) canvas.setTextAlign('center') canvas.setFillStyle('#ffffff') canvas.setFontSize(12) canvas.fillText("生成的文字", this.state.canvasWidth * 0.5, this.state.canvasWidth * 1.26) canvas.stroke(); canvas.draw(true,()=>{ Taro.canvasToTempFilePath({ canvasId: 'shareCanvas', success: function(res) { console.log(res) Taro.saveImageToPhotosAlbum({ filePath: res.tempFilePath, success: function(res) { console.log(res) }, fail: function(err) { console.log(err) } },that) } },that) }) }
如需正确使用,需将Taro.createCanvasContext('shareCanvas',this)
替换Taro.createCanvasContext('shareCanvas',this.$scope)
,小编我也是Google,百度搜了很多文章才知道,也许是我对react理解不够深刻吧git