2015-10-04 2 views
1

Немного обманывается с Полимером, и я пытаюсь создать простой запрос на получение информации о моем Github. Я получаю ошибку Polymer.httpRequest is not a function. Когда это ясно.Не ошибка функции, Полимер

Polymer({ 
    is: 'custom-element', 
    properties: { 
     name: '' 
    }, 
    httpRequest: function(type, url){ 
     var getRequest = new XMLHttpRequest(); 
     var data = getRequest.responseText; 
     getRequest.open(type, url, true); 
     getRequest.send(); 
     console.log(data); 
     return data; 
    } 
}); 

Polymer.httpRequest('GET', 'https://api.github.com/users/joshspears3'); 

Любые идеи, почему он возвращает эту ошибку? Спасибо за помощь заранее.

+0

После того, как избавиться от ошибки Polymer, Вы не можете вернуться из асинхронного метода. И вы читаете ответText ПЕРЕД тем, как вы делаете вызов Ajax. – epascarello

+0

Вы не называете метод с помощью Polymer. Вы вызываете его с помощью элемента, который он ссылается. – epascarello

ответ

0

Полимер не имеет метода httpRequest, который вы создали. Вместо этого этот метод создается для «настраиваемого элемента».

Вы можете получить доступ к методу на новом элементе, показанном ниже:

<link rel="import" href="../polymer/polymer.html"> 

<dom-module id="custom-element"> 
<template></template> 

<script> 
    Polymer({ 
    is: 'custom-element', 
    properties: { 
    name: '' 
    }, 
    ready: function() { 
     this.httpRequest('GET', 'http://stackoverflow.com'); 
    }, 
    httpRequest: function(type, url){ 
     var getRequest = new XMLHttpRequest(); 
     var data = getRequest.responseText; 
     getRequest.open(type, url, true); 
     getRequest.send(); 
     console.log(data); 
     return data; 
    } 
    }); 
</script> 
</dom-module> 
Смежные вопросы