質問のコンテキスト:
私はこの質問の解決策を使用しています:値が変更されていないときにAngularJSビューを更新するにはどうすればよいですか?だから私の見解では:
<img ng-src="{{user.photo.pathRelative}}{{randomStr}}" alt=""/>
写真を変更するときは、コントローラーで次のコードを実行します。
$scope.user.photo.pathRelative = somePathToPhoto;
$scope.randomStr = '?randomStr=' + new Date().getTime();
これにより、次のhtmlが作成されます(すべてが正常に機能します)。
<img ng-src="img/profiles/5350f142dd9624b818d90007/5350f142dd9624b818d90007.png?randomStr=1398159116845" alt="" src="img/profiles/5350f142dd9624b818d90007/5350f142dd9624b818d90007.png?randomStr=1398159116845">
質問:
ここで、ユーザーがこの写真を削除できるようにしたいので、ユーザーが削除ボタンを押すと、次のようになります。
$scope.user.photo.pathRelative = '';
$scope.randomStr = '';
ただし、これにより次のhtmlが生成されます。
<img ng-src="" alt="" src="?randomStr=1398159116845">
したがって、src属性はまだ設定されているため、ブラウザはそれをレンダリングしようとしますが、明らかにパスが無効です。
このsrcが誤った値に設定されている理由のヒントはありますか?
パスが設定されていない場合に要素を削除するようにng-ifを設定できimg
ます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加