Je rencontre actuellement [SyntaxError: Jeton non valide ou inattendu] lorsque vous essayez d'importer une image et de le charger sur l'attribut SRC. Voici le code:
import * as ReactDOMServer from 'react-dom/server';
import { EmailHeader } from '../email/pages/EmailHeader';
///...
ReactDOMServer.renderToStaticMarkup(<EmailHeader/>)
4 Réponses :
Vous devez probablement configurer votre webpack. Voici un moyen facile de charger des fichiers image. https://webpack.js.org/guides/asset-management/# Loading-Images P>
au lieu d'importer une image comme J'utilise le même dans mon projet et ça marche. * code> Vous pouvez importer une image comme celle-ci-
Reportez-vous à cette réponse pour obtenir plus de détails -
Voir Hawkeye Parker Réponse P> P>
Vous devez créer un autre module de serveur pour le rendu SSR, COS Votre image et CSS sont emballés par WebPack telle que ceci: paquet.json
p>
import React from 'react';
import fs from 'fs';
import { StaticRouter } from 'react-router-dom';
import Main from '../src/container/main';
const render = require('../buildSsr/main').default;
const reactDomServer = require('react-dom/server');
console.log('server start ....');
console.log(render);
const useServerBuildFile = true;
let buildHtml;
module.exports = function(app) {
const routerArray = ['/', '/todo', 'about'];
routerArray.forEach((item) => {
if (useServerBuildFile) {
app.get(item, render);
} else {
app.get(item, (req, res) => {
const context = {};
const appHtml = reactDomServer.renderToString(
<StaticRouter location={ req.url } context={ context }>
<Main/>
</StaticRouter>,
);
if (!buildHtml) {
buildHtml = fs.readFileSync('./build/index.html', 'utf8');
}
let result = buildHtml.replace('#body', appHtml);
res.send(result);
});
}
});
};Installez le package NPM "File-Loader '.
import logo from '../../../../assets/logo.png';