Я добавляю два компонента JS в моем HTML, но один не работает
в консоли chrome я вижу ошибку в js файле в 1 строке
Импортировать React из 'реакции'
Uncaught SyntaxError: Неожиданный идентификатор
первый файл js работает правильно, эта форма импорта React 'реагирует', которую я использовал на нашей странице, и это работало правильно
почему?
Мой файл js:
import React from 'react'
const Header = (props) => (
<h1>{props.title}</h1>
)
const e = React.createElement;
class BookEditPage extends React.Component {
constructor(props) {
super(props);
this.state = {comments: [],books: []};
}
componentDidMount() {
Promise
.all(
[fetch('/api/comments').then(response => response.json())
,fetch('/api/books').then(response => response.json())])
.then(([comments,books]) => this.setState({comments,books}));
}
render() {
return e(
<React.Fragment>
<Header title={'Books'}/>
<table>
<thead>
<tr>
<th>ID</th>
<th>Book</th>
<th>Author </th>
<th>Genre</th>
</tr>
</thead>
<tbody>
{
this.state.books.map((book, i) => (
<tr key={book.id} >
<td>{book.id}</td>
<td>{book.bookName}</td>
<td>{book.author.authorName +' ' + book.author.authorSurname}</td>
<td>{book.genre.genreName}</td>
</tr>
))
}
</tbody>
</table>
<Header title={'Comments'}/>
<table>
<thead>
<tr>
<th>ID</th>
<th>Book name</th>
<th>Comment body</th>
</tr>
</thead>
<tbody>
{
this.state.comments.map((comment, i) => (
<tr key={i}>
<td>{comment.id}</td>
<td>{comment.book.bookName}</td>
<td>{comment.commentBody}</td>
</tr>
))
}
</tbody>
</table>
</React.Fragment>
)
}
}
const domContainer = document.querySelector('#book-edit-table');
ReactDOM.render(e(BookEditPage), domContainer);
мой HTML-файл:
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8"/>
<title>Edit book</title>
<style type="text/css">
body {
padding: 50px;
}
label {
display: inline-block;
width: 100px;
}
input:read-only {
background: lightgray;
}
.row {
margin-top: 10px;
}
</style>
</head>
<body>
<div id="like-button"></div>
<div id="book-edit-table"></div>
<script src="https://unpkg.com/react@16/umd/react.development.js" crossorigin></script>
<script src="https://unpkg.com/react-dom@16/umd/react-dom.development.js" crossorigin></script>
<script src="/LikeButton.js"></script>
<script src="/BookEditPage.js"></script>
</body>
</html>