angular - NgZone() 如何在 Microsoft Teams 选项卡中工作
问题描述
我正在努力在 Angular 中构建 Microsoft Teams 选项卡。根据下面的代码,我从 Microsoft 获取上下文。在我调用几个函数的地方,其中一个函数是this.checkOwner()
返回登录的人是否是所有者。
所以我面临的问题是,如果我以会员身份(非所有者)登录,它有时会返回,true
而且只有在我使用桌面应用程序的移动应用程序时才会出现这种情况。Ngzone是否有任何延迟?
microsoftTeams.getContext((Context: microsoftTeams.Context) => this.zone.run(() => {
this.authSrvc.updateCurrentContext(Context);
this.checkOwner();
.
.
.
))}
checkOwner() {
this.authSrvc.getOwnersList(this.authSrvc.currentContext.groupId).subscribe((res: any) => {
const isExist = res.value.find(res => res.userPrincipalName === this.authSrvc.currentContext.userPrincipalName);
this.isOwner = isExist ? true : false;
});
}
解决方案
我们最终无法重现该问题。请检查 context.userTeamRole,如果返回 0 用户是团队的所有者,如果返回 1 用户是团队成员。请查看此文档以获取更多信息
推荐阅读
- css - CSS 直接后代在生产构建中无法正常工作
- django - 获取 http://dl-cdn.alpinelinux.org/alpine/v3.8/main/x86_64/APKINDEX.tar.gz 总是失败
- html - 在多行文本下绝对定位一行
- java - JanusGraph 地理索引
- android - Android MVP - 处理 onActivityResult 的正确方法是什么?
- javascript - 如何让我的重置按钮使用 JavaScript/JQuery 工作?
- java - 在 Java 中解析任何日期格式的单个类
- makefile - makefile 在退出前执行不存在的命令
- python-3.x - Django绝对网址在html模板中不起作用
- django - 仅发送带有 200 响应的 OPTIONS 请求