类型上不存在属性:为什么 TypeScript 会抱怨而 JavaScript 不会?

时间:2021-06-14 03:17:45

标签: javascript reactjs typescript properties

在下面的代码中

import { useMsal } from "@azure/msal-react";

function ProfileContent() {
    const { instance, accounts } = useMsal();

    const name = accounts[0] && accounts[0].name;

JavaScript 对此没有问题,代码按预期工作。但是当我将其设为 TypeScript 文件时,我会收到错误

<块引用>

属性 'name' 不存在于类型 'Partial>

是什么发生了如此巨大的变化,以至于 TypeScript 认为库中的属性甚至不存在?

1 个答案:

答案 0 :(得分:1)

浏览源代码,看起来他们可能在 IMsalContext 中使用了错误的类型。 dev 分支上有一个带有消息 "Fix accounts type" 的提交。

这是当前的 released versiondev branch versionpull requestassociated issue