Javascript 尽管src内容发生了变化,但图像没有变化

Javascript 尽管src内容发生了变化,但图像没有变化,javascript,angular,image,Javascript,Angular,Image,所以 user.photo\u url=“somr url”保持不变,但路径上的图像会发生变化 但这并不反映在用户界面上 因此,当src更新时,如何反映img上的变化 我尝试过但没有成功的事情 双向绑定(如图所示) ChangeDetectorRef(检测更改功能) 试试这个 this.appService.uploadProfileImage(this.user._id, this.imageFormData).then((response: any) => { this.

所以
user.photo\u url=“somr url”
保持不变,但路径上的图像会发生变化

但这并不反映在用户界面上

因此,当src更新时,如何反映img上的变化

我尝试过但没有成功的事情

  • 双向绑定(如图所示)
  • ChangeDetectorRef(检测更改功能)
试试这个

this.appService.uploadProfileImage(this.user._id, this.imageFormData).then((response: any) => {
      this.user = response;
    });

我刚刚测试了您的代码,您需要使用
[src]
而不是
[(src)]

我在中做了一个小演示&效果很好

 <img src="{{user.photo_url}}" alt="profileImage">

您可以添加
plunkr
jsfiddle
来更好地了解这一点。您必须销毁映像并重新创建它,以便从服务器重新加载。一旦图像被浏览器下载,就无需再次加载。除非监视的变量发生变化,否则angular不会执行任何操作。它如何知道您在服务器上做了什么。在控制台中显示错误消息?
 <img src="{{user.photo_url}}" alt="profileImage">
<button (click)="changeImg()">change image source</button>
<br>
<img [src]="img" alt="profileImage">
 state : boolean;
  img: string;

  changeImg() {
    this.state = ! this.state;
    this.img =  this.state ? "https://image.freepik.com/free-photo/blue-sky-with-clouds_1232-936.jpg" : "https://blogs.qub.ac.uk/queensuniversitybelfast/files/2015/05/red-sky.jpg"
  }