首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在没有生成器的情况下以编程方式使用Nuxt

在没有生成器的情况下以编程方式使用Nuxt
EN

Stack Overflow用户
提问于 2019-05-31 19:16:02
回答 2查看 702关注 0票数 4

我在nuxt.render中间件中以编程方式在express中使用nuxt,如下所示

代码语言:javascript
复制
const { Nuxt, Builder } = require('nuxt')
const app = require('express')()

const api = require('../api')
app.use('/api', api)

let config = require('../nuxt.config.js')
config.dev = !(process.env.NODE_ENV === 'production')

// Init Nuxt.js
const nuxt = new Nuxt(config)
app.use(nuxt.render)

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

  // Listen the server
  app.listen(port, host)
  console.log('Server listening on ' + host + ':' + port)
}
start()

当我开发服务器api路由,并对服务器端api文件进行一些更改并重新启动服务器时,每次都会构建整个nuxt项目,这会花费太多时间。这很不方便,因为nuxt文件中没有更改,只有api路由文件中有更改。

因此,在构建一次之后,我注释掉以下代码行:

代码语言:javascript
复制
if (config.dev) {
// const builder = new Builder(nuxt)
// await builder.build()
}

然后重新启动服务器,当然不会启动nuxt构建器。但是我现在不能在浏览器上访问nuxt。服务器api路由可以工作,但是nuxt页面路由只显示"Nuxt loading…“。屏幕。

如何在开发模式下使用nuxt app,而不是每次都构建它?

EN

回答 2

Stack Overflow用户

发布于 2020-02-12 09:41:02

这可能是一个有效的用例,有时人们不想为一个非常小的api/ui对使用两个服务器。我的建议也是有一个分离的模式,通过nuxt/proxy工作,你可以在你做开发工作的时候运行它。在分离模式下,nuxt单独工作,api也单独运行,nuxt通过‘nuxt/proxy’模拟上面的设置。通过在nuxt config中添加smth可以非常容易地进行设置

代码语言:javascript
复制
  modules: [
    ['@nuxtjs/proxy', {    "/api/": { target: 'http://localhost:888/api'} }]
  ]

在prod中,你可以像以前一样运行。

票数 0
EN

Stack Overflow用户

发布于 2021-05-19 14:55:45

您可以使用build.parallelbuild.cachebuild.hardSource。这将极大地加快初始构建后的构建时间。

不过,对于生产构建,我并不推荐而不是推荐这样做。这就是我在代码中使用它的方式:

nuxt.config.js

代码语言:javascript
复制
const isDev = process.env.NODE_ENV === "development";

module.exports = {
// ...
  build: {
    parallel: isDev,
    cache: isDev,
    hardSource: isDev
  },
// ...
};

package.json中,我将build脚本的NODE_ENV设置为production

代码语言:javascript
复制
"scripts": {
  "build": "NODE_ENV=production nuxt build"
}

附注:您可能还需要为开发版本设置build.publicPath

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56394061

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档