我有个问题。随着@EntityRepository装饰器在 中被标记为已弃用typeorm@^0.3.6,现在推荐的或 TypeScript 友好的方式来为 NestJS 中的实体创建自定义存储库?之前的自定义存储库如下所示:
// users.repository.ts
import { EntityRepository, Repository } from 'typeorm';
import { User } from './user.entity';
@EntityRepository(User)
export class UsersRepository extends Repository<User> {
async createUser(firstName: string, lastName: string): Promise<User> {
const user = this.create({
firstName,
lastName,
});
await this.save(user);
return user;
}
}
Run Code Online (Sandbox Code Playgroud)
由于 NestJS 默认配置了 TypeScript 支持,因此我可以usersRepository.createUser()在这样的服务中毫无问题地调用:
// users.service.ts
import { Injectable } from '@nestjs/common';
import { InjectRepository } from '@nestjs/typeorm';
import { User } from './user.entity';
import …Run Code Online (Sandbox Code Playgroud) 我希望用户能够在有新服务人员可用时等待现场更新?当有新的更新可用时,我已经能够显示一个弹出窗口,但是我想添加一个按钮来当场强制更新。我知道可以通过调用skipWaiting来实现,但是不确定如何使用Create React App来实现它。有谁能做到这一点?希望能有所帮助。谢谢!
我在代码审查期间看到了下面的这个语法,这是我第一次看到它,我在网上找不到任何关于它被使用/推荐的文章 - 通常我会选择箭头函数或useCallback在这个用例中。只是好奇这里是否有人使用过它,如果是,您能否提供一些参考资料或一篇文章,说它是安全的或建议使用它。
function DummyComponent({ onBtnClick }) {
const [data, setData] = useState('some-data-that-only-exists-here');
return (
<div>
<button onClick={onBtnClick.bind(null, dummyData)} />
</div>
)
}
Run Code Online (Sandbox Code Playgroud)
有人告诉我,这会阻止在重新渲染时重新创建该函数。此外,在编写测试期间,它通过一个似乎是 HTML 按钮类的类作为onBtnClick触发时的第二个参数,这是我不同意这一点并需要一些参考的原因之一。