typescript - 为什么我们使用自定义类型而不是字符串?
问题描述
我正在读一本关于打字稿的书。在一章中,我找到了代码示例:
type OptionsType = {
db: string;
};
export const connect = ({ db }: OptionsType): void => {
mongoose.connect(db);
};
使用的是:
const db = "mongodb://";
connect({ db });
为什么我们将db
字符串连接包装到自定义类型OptionsType
?为什么不使用 string db
,因为mongoose.connect(db);
接受这个。
解决方案
功能connect
由本书作者定义。他决定它应该采用一个参数,该参数是一个具有名为 的属性的对象db
。
db
他实现了该函数,以便它从名为函数参数的属性中取出值,并使用它来调用mongoose.connect
它的第一个参数是连接字符串。
作者决定这样定义他的函数并没有什么特别的原因。也许他想说明如何将值作为对象的属性传递给函数?
由于他只传递了一个值,因此实际上没有理由将其包含在一个对象中。
推荐阅读
- python - 如何在 QWidget 上添加背景图像并在其上添加位置 QLineedit?
- bash - 如何根据列拆分文件然后将该列放入 awk 或 bash
- android - 这些在 UI 线程上运行代码的方法有什么区别?
- javascript - Mongoose 在 [Mixed]-Arrays 的查询中自动插入“$in”
- angular - “对象”类型不存在属性“方向”
- javascript - 如何将 Post 请求发送到我做出反应的 php 文件?
- odoo - Odoo:是否可以为多个联系人使用同一个银行帐户?
- reactjs - 在 apollo 客户端 GraphQL React 应用中添加对特定路由的订阅
- sql - 如何从 SQL Server 上的 XML 列中选择数据?
- json - JSON字符串序列与我的JSON类不同,请建议我如何更正序列