角度jを動的に使用してインラインsvg内に画像を追加しようとしています。以下のコードを見つけてください。角型jsがsvg要素内に画像タグをレンダリングしていません
<svg id="deviceSelect" ng-if="$ctrl.src" class="device-mapper" width="100%" ng-attr-height="{{$ctrl.height + 20}}">
<rect x="0" y="0" width="100%" height="100%" fill="#f1f1f1"></rect>
<g transform = "translate(10,10)">
<image x="0" y="0" xlink:href="" ng-attr-width="{{$ctrl.width}}" ng-attr-height="{{$ctrl.height}}" ng-href="{{ $ctrl.src }}"/>
</g>
</svg>
画像は、ボタンクリックのようなページで何らかのイベントが発生するまで読み込まれません。 上記のコードでは、$ ctrl.srcがAPIから動的に読み込まれます。
コード画像srcを更新する:
$scope.$watchCollection('$ctrl.image', function (image) {
if (image) {
ctrl.src = _.find(image.links, {rel:'self'}).href;
ctrl.getImageMetaData(ctrl.src);
} else {
ctrl.src = null;
}
});
'ng-href =" {{$ ctrl.src}} "の代わりに' ng-src = "{{$ ctrl.src}}" ''にする必要がありますか? – Developer
どちらかが動作していない –
$ httpまたは$ .ajaxを使用して、どのようにあなたのAPIを呼び出していますか? – Developer