0

我正在使用 Patternlab、Handlebars 和 Gulp 作为原型设计工具。目前我有一个有机体正在尝试将数据传递给循环中的原子。我收到以下错误。

Error: Parse error on line 12:
...bLabels}}      {{> atoms-tab(tabText: "
----------------------^
Expecting 'OPEN_SEXPR', 'ID', 'STRING', 'NUMBER', 'BOOLEAN', 'UNDEFINED', 'NULL', 'DATA', got 'INVALID'

我的代码如下:

<nav class="tabbed-nav {{tabMenuClass}}">
  <ul>
    {{#each tabLabels}}
      {{> atoms-tab(tabText: {{tabText}})}}
    {{/each}}
  </ul>
</nav>

和 JSON:

{
  "tabLabels": [
    {
      "tabText": "Tab 1",
      "tabClass": "",
      "disabledState": ""
    },
    {
      "tabText": "Tab 2",
      "tabClass": "",
      "disabledState": ""
    },
    {
      "tabText": "Tab 3 Open",
      "tabClass": "tab-open",
      "disabledState": ""
    }
  ]
}

我在其他问题中看到了一些例子,比如这里的循环是嵌套的,所以我不确定我的代码有什么不同/不正确。

4

2 回答 2

1

尝试将您的包含语法更改为

{{> atoms-tab tabText="{{tabText}}" }}

正如我(最近)在https://github.com/pattern-lab/patternlab-node/wiki/Working-with-PatternEngines中记录的那样,您会注意到并非所有 PatternEngines 都是平等的,一些语言结构来自默认的 Mustache引擎,就像这个引擎,完全被更强大的引擎所淘汰。

于 2017-05-18T13:01:57.430 回答
0

原来问题出在我的 patternlab-config.json 中。我没有更改 patternExtension 选项,如下所示。

"patternExtension": "handlebars"

于 2017-05-19T13:49:01.523 回答