Доступ к узлам в теневом корне

У меня есть свой пользовательский элемент, определенный как:

class purchaseLines extends HtmlElement {
  static final tag = 'purchase-lines';
  factory purchaseLines() => new Element.tag(tag);

  var shadow, innerDiv;

  purchaseLines.created() : super.created() {
     var shadow = this.createShadowRoot();      
     innerDiv = new cardFonix()..width='310px'..height ='80px';

   var LineNumber = new InputFonix('serial#')..iw=20;
   var LineItem = new InputFonix('item code');
   var LineQty = new InputFonix('Qty')..type='number';
   var lRDD = new InputFonix('R. Delivery')..type='date';

   innerDiv.container.nodes..add(LineItem)..add(LineQty)..add(lRDD); 

   shadow.nodes.add(innerDiv);
   }
 }

и он отображает требуемое правильно, как в прикрепленном файле.

Я пытаюсь прочитать, сколько карт строк было введено, и значение каждого элемента в каждой карте.

  1. Для чтения карт с количеством строк я использовал приведенный ниже оператор, и он работал правильно.

    печать (этот.родительский.узлы.длина);

  2. Моя проблема с чтением значений элементов в каждой карте/пользовательском элементе, и я не могу углубиться в nodes.nodes... и получил эту ошибку

    • There is no such getter 'length' in 'Node'

как я могу прочитать значения каждого элемента в тени? Я нашел в DART shadowRoot, но не уверен, связано ли это с моей проблемой или с чем-то еще, я гуглил, как мог, и не нашел ответа :(

![developer tool output][1]

введите здесь описание изображения


person Hasan A Yousef    schedule 14.10.2014    source источник


Ответы (1)


Секрет был в shadowRoot

Я смог получить к нему доступ, используя следующий код:

this.parent.nodes[0].shadowRoot.nodes
person Hasan A Yousef    schedule 17.10.2014