Невозможно извлечь данные углового контроллера в HTML - PullRequest
0 голосов
/ 24 августа 2018

Я использую Angular 1.6. Я пытаюсь получить координаты x и y для элемента SVG из контроллера компонента.

this.painterModel = [];
var imageRef = {};
imageRef.path='assets/images/sample.png';
imageRef.xPos = 100;
imageRef.yPos = 100;
this.painterModel.push(imageRef);

В настоящее время в списке есть только один элемент. HTML выглядит следующим образом.

<svg id="frontView" width="1000" height="1000">
            <image ng-repeat="x in $ctrl.painterModel" href="x.path" x="x.xPos" y="x.yPos" />
</svg>

Я всегда получаю эту ошибку в консоли, которая говорит,

app.js:9756 Error: <image> attribute x: Expected length, "x.xPos".
app.js:9756 Error: <image> attribute y: Expected length, "x.yPos".

Что я делаю не так?

1 Ответ

0 голосов
/ 24 августа 2018

А как насчет {{ rendering }} фактических значений вместо этого?

<image ng-repeat="x in $ctrl.painterModel" 
  ng-href="{{ x.path }}" 
  x="{{ x.xPos }}" 
  y="{{ x.yPos }}" 
/>

Как сейчас, вы просто передаете строку 'x.xPos' атрибуту, а не значение x.xPos.Вот почему вы получаете ошибку Ожидаемая длина, "x.xPos" .Также используйте ng-href вместо href.

...