【问题标题】:How to add attributes to a dynamically created component如何向动态创建的组件添加属性
【发布时间】:2014-01-04 23:56:19
【问题描述】:

我想将发布的属性添加到动态创建的组件。该组件的代码如下所示:

  <!DOCTYPE html>

  <link rel="import" href="name-form.html">
  <link rel="import" href="../../shared/red-asterisk.html">

  <polymer-element name='name-view'>
    <template>

      <div id='name-view' class='flex-row-container view'>
        <section id='row0' class='flex-row' >
          <button id='add-name-btn'
                  class='button add-button'
                  on-click='{{addName}}'
                  autofocus>Add Name</button>
          <red-asterisk></red-asterisk>
        </section >

        <section id='names' class='flex-column'>

        </section>
      </div>

    </template>

     <script type="application/dart">

      import 'package:polymer/polymer.dart';
      import 'dart:html' show Event, Node, Element;

      @CustomTag( 'name-view' )
      class NameViewForm extends PolymerEment
      {

        @published String receiver = '';

        NameViewForm.created() : super.created();


        void addName( Event e, var detail, Node target )
        {
          if( $[ 'names' ].children.length < 1 )
          {
            $[ 'names' ].children
                        .add( new Element.tag( 'name-form' ) );


          }

          $['names'].on["deleteDispatch"]
                   .listen( (Event e)
                       {
                          (e.target as Element).remove();

                       });

        }
      }

    </script>
  </polymer-element>

它是元素('name-form'创建的

     $[ 'names' ].children
                 .add( new Element.tag( 'name-form' ) );

我想在其中添加一个属性 receiver='patient'。

谢谢

【问题讨论】:

    标签: dart dart-polymer


    【解决方案1】:

    这是Custom Events in Nested Polymer Dart UI 的后续问题吗?在这种情况下,没有必要创建已发布的属性。您可以在类中添加一个类似role 的字段,并将该字段设置为'nok-form''patient-form'

    Element nameForm = new Element.tag( 'name-form' )
    nameForm.role = 'nok-form';
     $[ 'names' ].children
                     .add(nameForm);
    

    当您想在标记 (HTML) 中设置值时,您只需要发布的属性。

    【讨论】:

    • 是的,甘特,是的。在您上面的解决方案中,该字段将无法帮助我决定将名称形式模型发送到何处。嵌套 Polymer Dart UI 中的自定义事件 -- -- 接收者字段看起来很有希望,但必须在 name-form 的父项上设置,然后以名称形式访问,用于动态确定将名称形式的模型发送到何处
    • 你为什么要这么做?如果您不提供更多信息来说明您为什么要这样做,那么几乎不可能提供一些指导。
    • name-form 中的名称模型作为嵌套属性发送给患者或 nok 模型,因此,patient.name = name1(来自 name-form> 的实例,嵌套在患者形式中;nok .name = name2(来自嵌套在 nok-form 中的另一个 name-form 实例>。我需要一种机制来确定应该在 CustomEvent 详细信息中将 name1 和 name2 模型发送到哪个模型。
    • @st_clair_clarke 这篇文章不包含一个词为什么你想这样做。这种架构背后更大的想法是什么?用例是什么?
    猜你喜欢
    • 2015-10-20
    • 2018-04-30
    • 2013-03-24
    • 2018-12-10
    • 1970-01-01
    • 2018-07-22
    • 2021-12-17
    • 2014-04-15
    • 2011-06-23
    相关资源
    最近更新 更多