带有键入的Javascript库不是模块(React Native)

带有键入的Javascript库不是模块(React Native),javascript,typescript,react-native,es6-modules,Javascript,Typescript,React Native,Es6 Modules,我正在尝试按照建议将Javascript库(Microsoft Playfab)集成到我的React本机应用程序中。该库带有打字功能,其结构如图所示。我有一个文件playfabWrapper.ts,其中包含以下内容 /// <reference path="../../node_modules/playfab-web-sdk/src/Typings/PlayFab/PlayfabClientApi.d.ts" /> import Playfab from 'playfab-web-

我正在尝试按照建议将Javascript库(Microsoft Playfab)集成到我的React本机应用程序中。该库带有打字功能,其结构如图所示。我有一个文件
playfabWrapper.ts
,其中包含以下内容

/// <reference path="../../node_modules/playfab-web-sdk/src/Typings/PlayFab/PlayfabClientApi.d.ts" />

import Playfab from 'playfab-web-sdk/src/PlayFab/PlayFabClientApi.js';

function test(titleId: string, customId: string/*, success: (data: PlayFabClientModels.LoginResult) => void, error: (message: string) => void*/): void {
    Playfab.ClientApi.LoginWithCustomID({
        TitleId: titleId,
        CustomId: customId,
        CreateAccount: true,
    }, (result: any, problem: any) => {
        ...
    });
}
然后我尝试从typings/Playfab复制打字,并将它们粘贴到与
PlayFabClientApi.js
相同的位置。这给了我以下的错误

File '/Users/../project/node_modules/playfab-web-sdk/src/PlayFab/PlayFabClientApi.d.ts' is not a module.

有趣的是,如果我删除导入行,我的IDE可以正确地检测
Playfab
,但它总是未定义的。我错过什么了吗?这种库甚至可以导入吗?我注意到它没有
索引.d.ts
,这会导致这个问题吗?任何帮助都将不胜感激。谢谢。

是的,如果它没有任何类型信息(index.d.ts文件),您就不能这样导入它。您可以尝试
var PlayFab=require(“…”)
(但这取决于您的上下文)。

我尝试过,得到了一个
未定义的不是对象的
错误。我只是尝试使用
PlayFabClientApi.js
中的函数。我对PlayFab不太熟悉,但如果你看看它的底部,它不会导出任何东西(需要通过导入使用它)。相反,它似乎将自己安装在Phaser对象上,但是如果没有Phaser对象,它就不会默默地执行任何操作。对不起,我帮不上忙了。嗯,好的。我知道Phaser是HTML5游戏框架,所以这可能是可选的支持。我会继续寻找,我感谢你的帮助。:)现在,我只使用Playfab REST API。如果我在这个问题上取得任何进一步进展,我将在此更新。
File '/Users/../project/node_modules/playfab-web-sdk/src/PlayFab/PlayFabClientApi.d.ts' is not a module.