gpt4 book ai didi

typescript - 使用matb33 :collection-hooks in typescript

转载 作者:行者123 更新时间:2023-12-03 09:12:32 25 4
gpt4 key购买 nike

我正在创建一个 Angular2-Meteor 应用程序,从社交教程开始。我正在尝试使用 alanning:roles 和 matb33:collection-hooks 实现用户角色。该解决方案类似于建议的 here 。唯一的区别是 Angular 2 需要角色和 Collection-Hooks 的 typescript 定义。我找到了meteor-typescript-libs,它有一个似乎有效的角色定义。然而,我发现的唯一的 collection-hooks 资源是 typed-meteor-collection-hooks。我尝试引用 index.d.ts通过将文件复制/粘贴到我的项目中,但我仍然收到以下错误:

server/imports/accounts.ts (30, 14): Property 'after' does not exist on type 'Collection < User >'.

在下面一行:

Meteor.users.after.insert(function (userId, doc) {    
if (doc.profile.type === "basic") {
Roles.addUsersToRoles(doc._id, [ROLES.Basic])
} else if (doc.profile.type === "admin") {
Roles.addUsersToRoles(doc._id, [ROLES.Admin])
} else if (doc.profile.type === "manager") {
Roles.addUsersToRoles(doc._id, [ROLES.Manager])
}});

我是 typescript 新手,我不清楚应该如何实现 Meteor 包的类型定义。显然,我的做法是错误的。有人对 Meteor-Angular2 中的角色和集合 Hook 有任何经验吗?

更新:尽管存在错误,但似乎 Meteor.users.after.insert() 代码在插入用户后正在执行。我正在继续开发,但希望有一个消除错误的解决方案。

最佳答案

您是否尝试过从 npm 安装类型?

https://www.npmjs.com/package/@types/meteor-collection-hooks

不要忘记添加到您的 tsconfig“types”数组中,例如:

"types": [
"@types/meteor-collection-hooks"
]

关于typescript - 使用matb33 :collection-hooks in typescript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40772935/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com