【发布时间】:2019-01-29 08:09:53
【问题描述】:
我想使用gapi从google访问people api资源,我尝试了很多方法来完成这项工作,但我仍然没有得到任何回应。它没有错误,没有警告。这是我的代码。
loadYoutubeApi() {
const script = document.createElement("script");
script.src = "https://apis.google.com/js/client.js";
script.onload = () => {
window.gapi.load('client', () => {
window.gapi.client.setApiKey(types.API_KEY)
window.gapi.client.setClientId(types.CLIENT_ID)
window.gapi.client.setDiscoveryDocs(types.DISCOVERY_DOCS)
window.gapi.client.setScope(types.SCOPE)
window.gapi.client.load('client:auth2', 'v3', () => {
console.log("gapi is ready")
this.setState({ gapiReady: true });
});
});
};
document.body.appendChild(script);
}
componentDidMount() {
this.loadYoutubeApi();
}
谁能告诉我为什么我什至无法获取控制台日志信息,它真的有效吗?
更新:
一旦我把这些代码注释掉了
window.gapi.client.setClientId(types.CLIENT_ID)
window.gapi.client.setDiscoveryDocs(types.DISCOVERY_DOCS)
window.gapi.client.setScope
我可以获取我的控制台信息,是否与这些方法有关?
更新:
我可以获取 gapi 对象和console.log(window.gapi) 以查看其详细信息。
【问题讨论】:
-
@David Kamer 谢谢,我之前尝试过这些方法,但它们都不适合我
-
如果您找不到我所说的文件夹,请告诉我。我知道直接将它添加到 index.html 文件中是可行的,因为这是我个人加载所有非反应脚本的方式。如果您一心想将其加载到组件中,您可以尝试在 onload 结束时添加 .call(),但我认为它不会起作用。
标签: javascript reactjs google-api google-api-js-client