express单站点设置多个次级路由对应不同的nuxt服务,但每次启动必须重新build才能请求到页面数据?

发布于 2022-09-07 23:29:23 字数 1527 浏览 11 评论 0

express 有若干个 次级路由

主路由

// 路由注入
// ./app.js
app.use('/site1',site1)
app.use('/site1',site2)

次级:

// ./routes/site1
const site1=express.Router()
const nuxt=require('./nuxt')
site1.use('/',nuxt.render)
// ./routes/site2
const nuxt=require('./nuxt')
const site2=express.Router()
site2.use('/',nuxt.render)

site1的部署方式是整个nuxt项目代码都在site1/nuxt中,启动顺序是:
node app.js
每次重启都会运行build
这时 site1/nuxt目录中生成了.nuxt
site1的页面可以显示出来

// ./routes/site1/nuxt/index.js
const { Nuxt, Builder } = require('nuxt')
let config = require('./nuxt.config.js')
const nuxt = new Nuxt(config)
const builder = new Builder(nuxt)
builder.build()
module.exports = nuxt

site2的部署方式是整个nuxt项目代码都在site2/nuxt中。启动顺序是:

site2的目录下npm run build 打包nuxt
这时 site2/nuxt目录中生成了.nuxt
node app.js

// ./routes/site2/nuxt/index.js
const { Nuxt, Builder } = require('nuxt')
let config = require('./nuxt.config.js')
config.dev = !(process.env.NODE_ENV === 'production')
const nuxt = new Nuxt(config)

module.exports = nuxt

但是site2的页面没有显示出来,直至超时。

1.路由经测试,可达

现在的问题是:
1.npm run build 会生成.nuxt,那nuxt.render挂在express上是否只需要

.nuxt
nuxt.config.js

2.如果我不希望每次重启实例都要将所有的site 重新build一次,我应该怎么做?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

最初的梦 2022-09-14 23:29:23

不清楚express.Router是否支持动态替换路由,如果可以的话,你可以监听文件的变化,然后重新把变更的加载进来,前提是你得先删除缓存

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文