我正在使用 Expo Go,并且正在创建一个壁纸应用程序,当用户单击“设置为壁纸”按钮时,我想在用户的设备上设置图像/壁纸我在互联网上搜索并尝试了很多软件包,但对我来说没有任何效果
我尝试打包以下软件包:
liuhong1happy - react-native-wallpaper-manager
meharbhutta - react-native-manage-wallpaper
这些解决方案都不适合我。
导入给我以下警告:
Could not find a declaration file for module 'react-native-manage-wallpaper'.
Note: Now its not giving me this warning.
现在这个错误来了
Error: Type is undefined
import {TYPE} from "react-native-manage-wallpaper
Use TYPE.HOME"
即使我已经导入了它。
这是我的尝试:
const handleSetWallpaper = () => {
ManageWallpaper.setWallpaper(
{
uri: imageSource,
},
TYPE.HOME,
);
};
这是一个极其简单的问题,但解决方案甚至更简单。
每当您遇到缺少声明错误时,您应该回想一下您正在使用哪种类型的项目:Vanilla JavaScript 或 TypeScript。
这种错误仅在您处理 TypeScript 项目时才会出现。
接下来,遗漏声明是什么意思?您可以在 TypeScript 项目中使用 JavaScript 库,但通常需要打字。大多数 NPM 包要么用 TypeScript 编写(因此不需要声明),要么包含适当的
.d.ts
文件,以便可以在 TypeScript 项目中使用它们。
另一种选择是该包对 TypeScript 一无所知——它不是用 TypeScript 编写的,也不包含任何
.d.ts
文件来补充 JavaScript。
如果某个包不了解 TypeScript,通常可以在
@types
命名空间中找到声明包;例如:
yarn add @types/liuhong1happy
# or
npm install --dev @types/liuhong1happy
注意:我尚未验证您列出的包是否有类型声明包。
如果没有第三方共享您正在使用的特定包的类型声明,那么您可能需要创建自己的类型声明。
通常通过阅读文档,您可以弄清楚类结构、函数签名等是什么。使用此信息,您可以创建自己的
.d.ts
文件并自己编写类型声明 - 并且您只需要包含您正在使用的函数/类的声明。
面临同样的问题,而且这与本机反应无关。这是关于博览会模块,我认为它不再支持壁纸管理器。搜索了很多但没有运气。如果您得到答案,请告诉我。