Я хочу загрузить Google APIs client library внутри моего index.html
, а onLoad='someMethod'
вызовет метод в отдельном файле javascript. Затем этот метод будет распечатан на консоли.Как использовать объект Window в ReactJS?
Клиентская библиотека загружается без каких-либо проблем, но сообщение не распечатывается в консоли, и я думаю, что это потому, что метод вообще не вызывается.
Вот мой index.html
:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Welcome</title>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
</head>
<body>
<div id="app"></div>
<script src="lib/vendors.js"></script>
<script src="build/bundle.js"></script>
<script src="https://apis.google.com/js/client.js?onload=handleGoogleClientLoad"></script>
</body>
Вот Javascript файл, который содержит handleGoogleClientLoad
метод:
import React from 'react';
import ReactDOM from 'react-dom';
import {Button} from 'react-bootstrap';
class MyApp extends React.Component {
handleGoogleClientLoad() {
console.log('Success on load');
}
render() {
return (
<div>
<Button>Click Me</Button>
</div>
);
}
}
const app = document.getElementById('app');
ReactDOM.render(<MyApp />, app);
Если это был обычный Java-метод будет выглядеть следующим образом:
window.handleGoogleClientLoad = function() {
// Log to the console
};
Есть что-нибудь в es6, что похоже на объект window
.
Я еще не пробовал использовать loadjs, но я добавил в метод 'componentDidMount()', и все работает отлично. Благодаря! – hellomoto
Как добавить элемент скрипта google API для загрузки до загрузки материала реакции? '<сценарий SRC = "https://apis.google.com/js/client.js?onload=handleGoogleClientLoad"> <сценарий SRC = "Библиотека/vendors.js"> <сценарий SRC =" сборки /bundle.js ">' – Bwaxxlo