2

我对Polymer非常陌生,我正在研究如何创建类似“我自己的有序列表版本”的东西。

(顺便说一句,我也在研究riotjs并尝试在那里做类似的事情,只是为了了解它是如何工作的,所以如果你对 riotjs 有所了解,也不要犹豫发布答案)

我的 html 看起来像这样:

<my-ol>
  <my-li>My first list item inside my ol</my-li>
  <my-li>My second list item inside my ol</my-li>
</my-ol>

我会生成 2 个类似的 dom 模块:

<dom-module id="my-ol">
  <template>
    <style>
      ...
    </style>
    <div class="myol">
      <content></content>
    </div>
  </template>
  <script>
  Polymer( { ... } );
  </script>
</dom-module>

<dom-module id="my-li">
  <template>
    <div class="myli">
      <content></content>
    </div>
  </template>
  <script>
  Polymer( { ... } );
  </script>
</dom-module>

这一切都有效,但如果我真的想让它像“本机”ol一样工作,我应该能够将项目的编号添加到输出中。

有谁知道这是否可能,如果可以,怎么做?

(我的最终目标是让它工作——当然不是 ol 的精确副本,这只是一个与我想做的事情有足够相似之处的例子——然后使各个列表项内容可编辑,并确保我可以以某种方式取回该内容,但首先要做的事)

4

1 回答 1

1

这是 Riot 中的解决方案。

<my-ol>
  <yield />

  this.count = this.opts.count || 0
</my-ol>

<my-li>
  <div>{index}. <yield/></div>

  this.index = ++this.parent.count
</my-li>

防暴标签很容易理解。我不确定这是否是您要查找的内容,但它确实显示了商品编号,并且是contenteditable.

于 2016-01-01T05:07:26.313 回答