server - 无法读取未定义的属性“getCompilationErrors”
问题描述
我在使用 nextJs 在无服务器上设置快速服务器实例时遇到问题。Cannot read property 'getCompilationErrors' of undefined
运行服务器功能时,我不断收到一个。app.render 似乎有问题。
- 运行调试时,它似乎来自 nextJs
服务器.js
const express = require('express');
const path = require('path');
const dev = process.env.NODE_ENV !== 'production';
const next = require('next');
const pathMatch = require('path-match');
const app = next({ dev });
const handle = app.getRequestHandler();
const { parse } = require('url');
const server = express();
const route = pathMatch();
server.use('/_next', express.static(path.join(__dirname, '.next')));
server.get('/', (req, res) => app.render(req, res, '/'));
server.get('*', (req, res) => handle(req, res));
module.exports = server;
index.js
const sls = require('serverless-http')
const binaryMimeTypes = require('./binaryMimeTypes')
const server = require('./server')
module.exports.server = sls(server, {
binary: binaryMimeTypes
});
无服务器.yml
service: ssr-react-next
provider:
name: aws
runtime: nodejs8.10
stage: ${self:custom.secrets.NODE_ENV}
region: us-east-1
environment:
NODE_ENV: ${self:custom.secrets.NODE_ENV}
functions:
server:
handler: index.server
events:
- http: ANY /
- http: ANY /{proxy+}
plugins:
- serverless-apigw-binary
- serverless-domain-manager
custom:
secrets: ${file(secrets.json)}
apigwBinary:
types:
- '*/*'
customDomain:
domainName: ${self:custom.secrets.DOMAIN}
basePath: ''
stage: ${self:custom.secrets.NODE_ENV}
createRoute53Record: true
# endpointType: 'regional'
# if the ACM certificate is created in a region except for `'us-east-1'` you need `endpointType: 'regional'`
解决方案
想办法解决这个问题,只需要使用异步准备应用程序
server.use(async(req, res, next) => {
await app.prepare();
next();
})
推荐阅读
- smartsheet-api - 智能工作表 API - 替换工作表?
- javascript - 如何修复 codacy 警报“通用对象注入接收器”
- rx-java2 - RxJava2 | 使用 .andThen() 链接嵌套的 Completables
- java - 使用 XSL javax.xml.transform.TransformerException 创建 PDF 时出错:org.xml.sax.SAXException
- angularjs - 当对象分配了多个 json 对象时无法过滤
- ios - 为什么没有任何东西发送到我的表格视图?
- linux - 在 Linux 上运行 DialogFlow 查询
- stocktwits - 您可以在不使用 OAuth 的情况下使用 StockTwits api 吗?
- python - 使用 tensorflow 时在异常中包含 tfrecord 名称
- excel - 如果单元格的部分值等于另一列的任何值,则条件格式化单元格