angular – 在异步中使用promises时捕获HTML5 FileReader的结果
发布时间:2020-12-17 08:53:49 所属栏目:安全 来源:网络整理
导读:我有一个Angular 4应用程序,我正在阅读一个图像尝试将base64字符串传递给另一个变量 – 但是由于这种异步性质我遇到了问题 – image.src是空的,因此值已正确传递给图像对象? ngAfterViewInit(): void { let image = new Image(); var promise = this.getBas
我有一个Angular 4应用程序,我正在阅读一个图像&尝试将base64字符串传递给另一个变量 – 但是由于这种异步性质我遇到了问题 – image.src是空的,因此值已正确传递给图像对象?
ngAfterViewInit(): void { let image = new Image(); var promise = this.getBase64(fileObject,this.processImage()); promise.then(function(base64) { console.log(base64); // outputs string e.g 'data:image/jpeg;base64,........' }); image.src = base64; // how to get base64 string into image.src var here?? let editor = new PhotoEditorSDK.UI.ReactUI({ container: this.editor.nativeElement editor: { image: image } }); } /** * get base64 string from supplied file object */ public getBase64(file,onLoadCallback) { return new Promise(function(resolve,reject) { var reader = new FileReader(); reader.onload = function() { resolve(reader.result); }; reader.onerror = reject; reader.readAsDataURL(file); }); } public processImage() { }
由于代码本质上是异步的,因此如果要使用它,则必须等待结果.在您的情况下,您将不得不等到您的承诺得到解决.所以你的代码应该是这样的:
ngAfterViewInit(): void { let image = new Image(); var promise = this.getBase64(this.fileObject,this.processImage); promise.then(function(base64: string) { console.log(base64); image.src = base64; let editor = new PhotoEditorSDK.UI.ReactUI({ container: this.editor.nativeElement editor: { image: image } }); }); } 我改变了以下事情: >我在Promback回调中移动了ReactUI实例化的代码 我希望这有帮助! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- bootstrap-带表单的导航条
- bash – 如何仅选择AWK脚本中的前10行
- 如何使用ngx-leaflet(Angular方式)创建矢量切片贴图?
- SBT Scala交叉版本,具有聚合和依赖性
- 如何编写shell脚本以删除错误目录中的解压缩文件?
- scala – 使用Spark SQL GROUP BY对DataFrame进行高效的Pai
- AngularJS $资源自定义标头
- virtualbox下centos虚拟机安装增强工具教程和常见错误解决
- scala – SPARK-5063 RDD转换和操作只能由驱动程序调用
- angularjs – 如何使用mousedown.dragselect事件捕获表td元
推荐文章
站长推荐
- angularjs – 覆盖primeNg的DataTable组件时的模
- scala – 更好的一个衬垫生成n个空格
- 环境变量不会从docker-compose转到容器
- Soap call webservice provided by Liferay
- 受限IP调用webservice方案 webservice远程测试显
- mysql 主从 binlog_format 设置关系
- 如何在vim中退出vimdiff模式,具体来说,对于Fugit
- Axis2 webservice中close_wait,java heap space
- Angular2的最新版本抱怨:NgModule DynamicModul
- Scala SBT:在本地依赖关系发生变化时触发操作
热点阅读