5

私はこのjsFiddleを持っています: http://jsfiddle.net/HMZuh/1/

このhtmlを含むもの

<div ng-app ng:controller="ShowHideController">
    <div ng-show='showMe'>
        <img ng-src="{{imageSource}}"/>
    </div>
    <button ng-click='showImage()'> show image </button>
<div>

そしてこのスクリプト:

function ShowHideController($scope) {
    $scope.showMe = false;

    $scope.imageSource = '';

    $scope.showImage = function(){
        $scope.showMe = true;
        $scope.imageSource = 'https://www.google.com/images/srpr/logo3w.png';
    }
}

ソースがまだ設定されていないときに 404, image not found が表示されます。showMe が false の場合、これを防ぐ方法はありますか?

</p>

4

2 に答える 2

3

http://angular-ui.github.com/の ui-if を使用してこれを改善しました。ng -hide/ng-show を使用して非表示/表示する代わりに、ui-if は単に要素をレンダリングしません。

<div ui-hide='ImageHasBeenUploaded'>
    <img ng-src='/some/image/path/{{imageName}}/>
</div>
于 2012-09-25T14:33:23.677 に答える
3

これを解決するには、次のことができます。

  1. http://jsfiddle.net/bGA4T/を使用ng-repeat
  2. $compileを使用して独自のディレクティブを宣言する
  3. 独自のng-srcディレクティブを作成する
  4. ...

これを解決する方法はたくさんあると思います。

于 2012-09-11T13:03:11.083 に答える