【问题标题】:Iron-ajax can't read json fileIron-ajax 无法读取 json 文件
【发布时间】:2017-04-11 15:04:24
【问题描述】:

在我的第一个视图中,我使用的是使用 Polymer Starter Kit 初始化的 Polymer 应用程序。我想在<paper-listbox> 中读取一个JSON 文件,并为每个数组元素创建一个<paper-item>:

这是我的<paper-listbox> 的代码:

<paper-listbox>
    <iron-ajax auto url="/listActivities.json" handle-as="json" last-response="{{activities}}" id="ajaxLoader"></iron-ajax>
    <template is="dom-repeat" items="{{activities}}">
        <paper-icon-item>
            <iron-icon icon="star" item-icon></iron-icon>
            <paper-item-body two-line>
              <div><span>{{item.label}}</span></div>
              <div secondary>Unit game number : <span>{{item.unitGames.length}}</span></div>
            </paper-item-body>
        </paper-icon-item>
    </template>
  </paper-listbox>

这是我的 JSON 文件:

[
{
    "_id":"58dbcb30dc0b2a01553c59a9",
    "staticMedia":"58d52d626575de2207193fac",
    "label":"myfirstgame",
    "__v":0,
    "unitGames":["58dbcaa5dc0b2a01553c59a8"]
},
{
    "_id":"58dd1d3edc0b2a01553c59af",
    "staticMedia":"58d12091241b0868bfb29a3b",
    "label":"Jeu à l'IUT",
    "__v":0,
    "unitGames":["58dd1b61dc0b2a01553c59ab"]
},
{
    "_id":"58dd23e14704644b4ab307e6",
    "staticMedia":"58d12091241b0868bfb29a3b",
    "label":"IUT",
    "__v":0,
    "unitGames":["58dd23ba4704644b4ab307e4"]
},
{
    "_id":"58e008d67d08713351f0af13",
    "staticMedia":"58d52d626575de2207193fac",
    "label":"Test POI clue",
    "__v":0,
    "unitGames":["58e008b97d08713351f0af12"]
},
{
    "_id":"58e10d2d7d08713351f0af22",
    "label":"Prunus MLG",
    "__v":0,
    "unitGames":["58e10d167d08713351f0af21"]
}
]

该应用不需要我的 JSON 文件的每一部分(只需要 label 和 unitGames)。当我运行该应用程序时,它在视图标题之后没有显示任何内容。我该如何解决这个问题?

【问题讨论】:

  • 自动设置了,但我找到了解决方案,非常感谢您的回答。

标签: json polymer polymer-1.0 iron-ajax


【解决方案1】:

您可能缺少组件所需的一个或多个 HTML 导入:

<link rel="import" href="../iron-ajax/iron-ajax.html">
<link rel="import" href="../iron-icon/iron-icon.html">
<link rel="import" href="../iron-icons/iron-icons.html">
<link rel="import" href="../paper-listbox/paper-listbox.html">
<link rel="import" href="../paper-item/paper-item.html">
<link rel="import" href="../paper-item/paper-icon-item.html">
<link rel="import" href="../paper-item/paper-item-body.html">

有了上面的导入和你的listActivities.json,这个plunker demo 产生:

【讨论】:

  • 问题来自我的 JSON 文件的路径,我的文件名之前的“/”不需要,但感谢您的帮助,抱歉我的英语不是我的母语,但从现在开始我会更加小心。
【解决方案2】:

问题来自我的 JSON 文件的 url 路径,不需要文件名前的“/”,因为该文件与 my-view1.html 位于同一文件夹中。

【讨论】:

    猜你喜欢
    • 2012-12-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-21
    • 2016-06-21
    • 2019-05-06
    • 2022-01-09
    • 2016-06-01
    • 1970-01-01
    相关资源
    最近更新 更多