如何在我的 React Native 应用程序中添加设置为壁纸功能

问题描述 投票:0回答:2

我正在使用 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,
    );
};
react-native expo wallpaper
2个回答
0
投票

这是一个极其简单的问题,但解决方案甚至更简单。

每当您遇到缺少声明错误时,您应该回想一下您正在使用哪种类型的项目: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
文件并自己编写类型声明 - 并且您只需要包含您正在使用的函数/类的声明。


-1
投票

面临同样的问题,而且这与本机反应无关。这是关于博览会模块,我认为它不再支持壁纸管理器。搜索了很多但没有运气。如果您得到答案,请告诉我。

© www.soinside.com 2019 - 2024. All rights reserved.