#reactjs #webpack #react-redux
#reactjs #webpack #react-redux
Вопрос:
Я пытаюсь скомпилировать свой server.jsx с помощью webpack. Он компилируется, но затем, когда я запускаю файл, я получаю «… ошибки «не определено». Например: «экспресс не определен». Если я проверю скомпилированный исходный код, я увижу, что express, очевидно, является неопределенной переменной. Вот мой webpack.config:
{
target: 'node',
entry: {
app: "./src/app/app.js",
},
output: {
path: __dirname "/dist/assets/",
filename: "./js/app.js"
}
,
externals: [
/^(?!.|/). /i,
],
module: {
loaders: [{
test: /.html$/,
loader: "file?name=[name].[ext]"
},
{
test: /.jsx?$/,
exclude: /node_modules/,
loaders: ["react-hot", 'babel?' JSON.stringify(
{
presets: ['react', 'es2015'],
"plugins": [
"syntax-class-properties",
"syntax-decorators",
"syntax-object-rest-spread",
"transform-class-properties",
"transform-object-rest-spread"
]
}
)]
}]
}
};
Я подумал, что, возможно, мне следует использовать libraryTarget, но я действительно не знаю, что мне с этим делать. Например: если я хочу использовать express и mongoose, где я должен это установить?
Редактировать
Server.jsx:
'use strict';
require('babel-core/register');
import express from 'express';
import path from 'path';
import mongoose from 'mongoose';
import { renderToString } from 'react-dom/server'
import { Provider } from 'react-redux'
import React from 'react';
import store from '../app/store'
import { RouterContext, match } from 'react-router';
import routes from '../app/routes/routes.jsx';
import { createLocation } from 'history';
import cors from 'cors';
const app = express();
...
Комментарии:
1. можете ли вы показать нам свой
server.jsx
?2. Я отредактировал вопрос @erik-sn