Polymer Core-Ajax问题

时间:2015-08-21 19:41:38

标签: polymer

不确定这里到底发生了什么。 我正在使用聚合物core-ajax自定义元素,在IE 10和11中,我对响应的行为非常奇怪。 看起来当我在console.log(typeof(响应))响应时,响应类型返回一个字符串而不是一个对象,所以我不能使用对象表示法来获取属性。

使用responseType显式设置ajax对象:'json'

请注意在// **下面的笔记

这是我的代码:

<core-ajax id="restaurantAjax"
               auto
               url="{{baseApiUrl + 'restaurants'}}"
               on-core-response="{{restaurantsLoaded}}"
               handleAs="json">
    </core-ajax>

this.async(function() {
            this.$.restaurantService.findById(e.detail.id, (function(restaurant) {

                this.$.viewrestaurant.wines = restaurant.wines;
               //** IE complaining unable to get property wines of undefined or null
                this.$.viewrestaurant.restaurant = restaurant;
            }).bind(this));
        });

 findById: function(id, callback) {
            this.$.xhr.request({
                url: this.baseApiUrl + 'restaurants/' + id,
                callback: (function(response) {
                    console.log(typeof(response))
                    //* IE returning string instead of object 

                    var restaurant = null;
                    if (response && response.restaurant) {
                        restaurant = response.restaurant;
                    }
                    callback(restaurant);
                }).bind(this),
                headers: {
                    "Content-type": "application/x-www-form-urlencoded"
                },
                responseType: 'json'
            });
        }
    });

有人可以帮助我,它会在网站上随机发生,而不是在所有Ajax对象上发生,这本身就很奇怪。

谢谢, 大卫

0 个答案:

没有答案