Load React + Emotion from CDN URLs, use globals
Remove @emotion/babel-preset-css-prop and import { jsx } from @emotion/core directly instead so Rollup can preserve imports order when bundling (instead of @emotion/core automatically inserting itself as the first import).
This commit is contained in:
@ -4,18 +4,26 @@ import { renderToString } from 'react-dom/server';
|
||||
import MainTemplate from '../client/MainTemplate';
|
||||
import MainApp from '../client/main/App';
|
||||
import createHTML from '../client/utils/createHTML';
|
||||
import getEntryPoints from '../utils/getEntryPoints';
|
||||
import getScripts from '../utils/getScripts';
|
||||
import renderTemplate from '../utils/renderTemplate';
|
||||
|
||||
const globalURLs =
|
||||
process.env.NODE_ENV === 'production'
|
||||
? {
|
||||
'@emotion/core': '/@emotion/core@10.0.6/dist/core.umd.min.js',
|
||||
react: '/react@16.7.0/umd/react.production.min.js',
|
||||
'react-dom': '/react-dom@16.7.0/umd/react-dom.production.min.js'
|
||||
}
|
||||
: {
|
||||
'@emotion/core': '/@emotion/core@10.0.6/dist/core.umd.min.js',
|
||||
react: '/react@16.7.0/umd/react.development.js',
|
||||
'react-dom': '/react-dom@16.7.0/umd/react-dom.development.js'
|
||||
};
|
||||
|
||||
export default function serveMainPage(req, res) {
|
||||
const content = createHTML(renderToString(React.createElement(MainApp)));
|
||||
|
||||
const entryPoints = getEntryPoints('main', {
|
||||
es: 'module',
|
||||
system: 'nomodule'
|
||||
});
|
||||
|
||||
const html = renderTemplate(MainTemplate, { content, entryPoints });
|
||||
const scripts = getScripts('main', globalURLs);
|
||||
const html = renderTemplate(MainTemplate, { content, scripts });
|
||||
|
||||
res
|
||||
.set({
|
||||
|
Reference in New Issue
Block a user