首页 > 解决方案 > 如何在Javascript循环中的每个项目后添加html换行符?

问题描述

我想在我的 web 组件中显示一个列表,带有换行符,问题是我在列表上循环的函数是 Javascript,我在我的 html 中调用它。我该怎么做?

我试过了 :

Javascript

_getValues(field) 
{

    switch (field.type) {
...

default:

          if (this.values.length) {
            for (const [index, value] of this.values.entries()) {
              result.push(value);
            }
            return result;
          } else 
          return (this.values);
}

HTML模板聚合物3.0

static get template() {
    return html `
...
                <template is="dom-repeat" items="{{fields}}">
                    <span><b> item :</b> <br> [[_getValues(item)]] </span>  
                </template> `

我希望 IHM 中的输出如下所示:

Windsor
groot

但我有这个:

Windsor,groot 

或 Windsor,,groot 或 Windsor[object HTMLTemplateElement]groot

标签: javascripthtmlstringweb-componentpolymer-3.x

解决方案


我认为如果您的字段对象看起来更像这样,这将起作用

fields : [
 {name: 'Windsor', value: 'groot'}
]

  <template is="dom-repeat" items="{{fields}}">
                        <div><b> name :</div> <div> value </div>  
                    </template> 

如果在模板中调用您的函数有效,那么这也应该有效

<div><b> item :</b></div> <div> [[_getValues(item)]] </div> 

推荐阅读