我通常使用此代码来创建存储库:
import { EntityRepository, Repository } from 'typeorm'
import { User } from './user.entity'
@EntityRepository(User)
export class UserRepository extends Repository<User> {
getInactiveUsers(): Promise<User[]> {
return this.createQueryBuilder()
.where('isActive = :active', { active: false })
.getMany()
}
}
Run Code Online (Sandbox Code Playgroud)
然而,现在EntityRepository已被弃用。我找到了参考资料,但我认为它相当复杂。我想知道是否有更简单的方法可以解决?
我遵循此参考来减少我的泊坞窗图像。这是我的 Dockerfile:
FROM node:10 as builder
RUN curl -sfL https://install.goreleaser.com/github.com/tj/node-prune.sh | bash -s -- -b /usr/local/bin
WORKDIR /app
COPY package.json /app
RUN npm install
COPY . .
RUN npm run build
RUN npm prune --production
RUN /usr/local/bin/node-prune
FROM node:10-alpine
COPY --from=builder /app/node_modules ./node_modules
COPY --from=builder /app/dist /app/
EXPOSE 3000
CMD npm run start:dev
Run Code Online (Sandbox Code Playgroud)
但是,当运行 docker build 时,我收到了错误。感谢您的关注。
我的节点版本是16,但是当我开始创建AWS项目并部署它时,出现错误。
An error occurred: HelloLambdaFunction - Resource handler returned message: "Uploaded file must be a non-empty zip )
Run Code Online (Sandbox Code Playgroud)
解决方案是将我的节点版本降级到14(我在互联网上搜索),但只有高于15的节点版本才能支持我的另一个项目中的??=运算符。现在我很困惑。
请教我如何解决这个问题,感谢您的关注。