显示core-ajax自定义元素时出错

时间:2014-07-17 20:36:24

标签: polymer

我正在制作一个自定义元素,以显示亚音速服务器的专辑封面墙。声明时,元素将查询服务器并获得200响应。响应在控制台中正确记录。但是在浏览器中没有呈现任何内容。

<link rel="import" href="../bower_components/core-ajax/core-ajax.html">
<link rel="import" href="album-info-big-art.html">
<polymer-element name="albums-wall" attributes="url">
<template>
 <core-ajax auto url="{{url}}" handleAs="json" response="{{response}}"></core-ajax>
  <template id='albums' repeat="{{response.subsonic-response.albumList2.album}}">
   <album-info-big-art artist='{{artist}}' title='{{name}}' img='{{coverArt}}'></album-info-big-art>
  </template>
 </template>
 <script>
  Polymer('albums-wall',{
   responseChanged: function(e) {
     var albums = this.response;
     console.log(albums);
   }
 });   
</script>
</polymer-element>

响应看起来像。

Object {subsonic-response: Object}
 subsonic-response: Object
  albumList2: Object
   album: Array[60]
__proto__: Object
status: "ok"
version: "1.10.2"
xmlns: "http://subsonic.org/restapi"
__proto__: Object
__proto__: Object

我很确定我错过了js部分的内容。

1 个答案:

答案 0 :(得分:2)

问题是属性名称​​ subsonic-response 。您不能在路径属性名称中使用短划线。重写表达式以使用数组语法:response['subsonic-response']...