diff --git a/packages/cli/lib/lib/webpack/prerender.js b/packages/cli/lib/lib/webpack/prerender.js index f75a84ced..bb4464e66 100644 --- a/packages/cli/lib/lib/webpack/prerender.js +++ b/packages/cli/lib/lib/webpack/prerender.js @@ -24,9 +24,12 @@ module.exports = function(env, params) { ); return ''; } + const { cwd } = env; - let preact = require('preact'), - renderToString = require('preact-render-to-string'); + const preact = require(require.resolve(`${cwd}/node_modules/preact`)); + const renderToString = require(require.resolve( + `${cwd}/node_modules/preact-render-to-string` + )); return renderToString(preact.h(app, { ...params, url })); } catch (err) { diff --git a/packages/cli/lib/lib/webpack/webpack-server-config.js b/packages/cli/lib/lib/webpack/webpack-server-config.js index 22ec1f6fc..1a1b6815f 100644 --- a/packages/cli/lib/lib/webpack/webpack-server-config.js +++ b/packages/cli/lib/lib/webpack/webpack-server-config.js @@ -14,6 +14,9 @@ function serverConfig(env) { chunkFilename: '[name].chunk.[chunkhash:5].js', libraryTarget: 'commonjs2', }, + externals: { + preact: 'preact', + }, target: 'node', resolveLoader: { alias: {