выдает ошибку
(in promise) SyntaxError: Unexpected token '<', "<html>
<"... is not valid JSON
Promise.then (асинхронно)
(анонимный) @ App.js:9
commitHookEffectListMount @ react-dom.development.js:23150
commitPassiveMountOnFiber @ react-dom.development.js:24926
commitPassiveMountEffects_complete @ react-dom.development.js:24891
commitPassiveMountEffects_begin @ react-dom.development.js:24878
commitPassiveMountEffects @ react-dom.development.js:24866
flushPassiveEffectsImpl @ react-dom.development.js:27039
flushPassiveEffects @ react-dom.development.js:26984
(анонимный) @ react-dom.development.js:26769
workLoop @ scheduler.development.js:266
flushWork @ scheduler.development.js:239
performWorkUntilDeadline @ scheduler.development.js:533
index.js//сервер
const express = require("express");
const PORT = process.env.PORT || 3001;
const app = express();
app.get("/api", (req, res) => {
res.set('Access-Control-Allow-Origin', 'http://localhost:3000/');
res.json({ message: "Hello from server!" });
});
app.listen(PORT, () => {
console.log(`Server listening on ${PORT}`);
});
index.js//клиент
import React,{createContext, useContext} from 'react';
import ReactDOM from 'react-dom/client';
import App from './App.js';
const Context = createContext(null)
const arrayse=[
{'id':1,'description':'description1'},
{'id':2,'description':'description2'},
{'id':3,'description':'description3'},
{'id':4,'description':'description4'},
{'id':5,'description':'description5'},
]
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<Context.Provider value={{arrayse:arrayse}}>
<App arrayse={arrayse}/>
</Context.Provider>
);
app.js
import React from "react";
import Shop from "./pages/Shop";
// client/src/App.js
function App({arrayse}) {
const [data, setData] = React.useState(null);
React.useEffect(() => {
fetch('http://localhost:3000/api')
.then((res) => res.json())
.then((data) => setData(data.message));
}, []);
return (
<div className="App">
<header className="App-header">
<p>{!data ? "Loading..." : data}</p>
</header>
<Shop arrayse={arrayse}/>
</div>
)
}
export default App;