Запустите приложение nuxt на IISNode с тестированием e2e - PullRequest
0 голосов
/ 09 октября 2019

У меня есть приложение Nuxt / Vue, и я хочу запустить его в рабочем режиме на узле IIS. Все работает нормально, за исключением того, что мне нужно скопировать всю папку node_modules на сервер.

Проблема в том, что для запуска Nuxt на IIS я использую этот файл для запуска сервера приложений Nuxt:

const express = require('express')
const consola = require('consola')
const { Nuxt, Builder } = require('nuxt')
const app = express()

// Import and Set Nuxt.js options
const config = require('../nuxt.config.js')
config.dev = process.env.NODE_ENV !== 'production'

async function start() {
  // Init Nuxt.js
  const nuxt = new Nuxt(config)

  const { host, port } = nuxt.options.server

  // Build only in dev mode
  if (config.dev) {
    const builder = new Builder(nuxt)
    await builder.build()
  } else {
    await nuxt.ready()
  }

  // Give nuxt middleware to express
  app.use(nuxt.render)

  // Listen the server
  app.listen(port, host)
  consola.ready({
    message: `Server listening on http://${host}:${port}`,
    badge: true
  })
}
start()

как вы можете видеть, для этого требуется 'nuxt', который вытягивает все зависимости nuxt, включая dev.

Поэтому я не могу запустить 'npm prune --production' по двум причинам: 1) на сервере он может не найти все необходимые ему зависимости 2) e2e тесты выполняются, когда node_modules содержит все, несмотря на то, что Nuxt запускается в'production'

Есть ли способ запустить Nuxt "нативно", не полагаясь на зависимости dev?

...