Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 离子2:来自img的src未更新_Javascript_Angularjs_Cordova_Ionic Framework_Ionic2 - Fatal编程技术网

Javascript 离子2:来自img的src未更新

Javascript 离子2:来自img的src未更新,javascript,angularjs,cordova,ionic-framework,ionic2,Javascript,Angularjs,Cordova,Ionic Framework,Ionic2,在Ionic 2中, 如果我将化身路径设置在回调之外,它就会工作 document.getElementById("myimg").src = 'data:image/png;base64,' + imageBase64; 视图似乎没有在回调中更新。在Ionic 1中,我会尝试重新渲染它,处理$scope或类似的内容,但我不知道Ionic 2的最佳实践是什么。您需要运行this.avatar\u path='数据:image/png;base64,'+imageBase64在NgZone内 请

在Ionic 2中,

如果我将化身路径设置在回调之外,它就会工作

document.getElementById("myimg").src = 'data:image/png;base64,' + imageBase64;

视图似乎没有在回调中更新。在Ionic 1中,我会尝试重新渲染它,处理$scope或类似的内容,但我不知道Ionic 2的最佳实践是什么。

您需要运行
this.avatar\u path='数据:image/png;base64,'+imageBase64在NgZone内

请尝试以下代码:

this.avatar_path = 'data:image/png;base64,someharcodedbase64data';

您需要运行
this.avatar\u path='数据:image/png;base64,'+imageBase64在NgZone内

请尝试以下代码:

this.avatar_path = 'data:image/png;base64,someharcodedbase64data';

你能解释一下原因吗如果我也在指令中塞迪特:这实际上把我引向了正确的方向,而且成功了。也许会有帮助。另外,您应该将语法更新为当前Angular 2:
从“@Angular/core”导入{NgZone}
您能解释一下原因吗如果我也在指令中塞迪特:这实际上把我引向了正确的方向,而且成功了。也许会有帮助。另外,您应该将语法更新到当前Angular 2:
import{NgZone}from'@Angular/core'
this.avatar_path = 'data:image/png;base64,someharcodedbase64data';
import {NgZone} from 'angular2/core';
...
constructor(_zone: NgZone) {
   this._zone = _zone;
}
... 
navigator.camera.getPicture( imageBase64 => {
this._zone.run(() => {
    this.avatar_path = 'data:image/png;base64,' + imageBase64;      
});
}