Webpack-dev-server, показывающий каталог файлов для сборки приложения узла - PullRequest
0 голосов
/ 30 марта 2019

Я просто получаю ~/ на экране при запуске webpack-dev-server. Я пытаюсь использовать веб-пакет с узлом приложения не реагирует.

Я не использовал веб-пакет в течение очень долгого времени, и я никогда не использовал его с узлом, так что я мог бы сделать что-то совершенно не так, поэтому, если вы видите это в моей конфигурации веб-пакета, укажите это и скажите мне, почему это неправильно и как его следует использовать.

У меня такое ощущение, что я делаю чанки неправильно, а файл не является сервером, но я не уверен?

Команда: webpack-dev-server --config webpack.dev.js

Вот мое приложение:

import { ApolloServer } from 'apollo-server'
import { schema } from './modules'

const server = new ApolloServer({
    schema
})

server.listen().then(({ url }) => {
    console.log(`? Server ready at ${url}`)
})

Вот мой webpack.common.js:

const path = require('path')
const nodeExternals = require('webpack-node-externals')
const CleanWebpackPlugin = require('clean-webpack-plugin')

module.exports = {
    target: `node`,
    externals: [nodeExternals()],
    watch: true,
    watchOptions: {
        ignored: /node_modules/
    },
    entry: {
        main: path.resolve(__dirname, 'server/app.js')
    },
    output: {
        filename: `[name].[hash].js`,
        path: path.resolve(__dirname, `dist`)
    },
    module: {
        rules: [
            {
                test: /\.js$/,
                exclude: /node_modules/,
                use: 'babel-loader'
            },
            {
                test: /\.(graphql|gql)$/,
                use: 'graphql-tag/loader'
            }
        ]
    },
    optimization: {
        splitChunks: {
            chunks: 'all',
            maxInitialRequests: Infinity,
            minSize: 0,
            cacheGroups: {
                node_vendors: {
                    test: /[\\/]node_modules[\\/]/,
                    chunks: 'all',
                    priority: 1
                }
            }
        }
    },
    plugins: [new CleanWebpackPlugin()]
}

webpack.dev.js

const merge = require('webpack-merge')
const common = require('./webpack.common.js')
const path = require('path')

module.exports = merge(common, {
    mode: 'development',
    devServer: {
        host: 'localhost',
        port: 3000,
        open: true,
        hot: true,
        contentBase: path.join(__dirname, 'dist')
    }
})
...