开发工作流程
在 NativeScript 中使用包(又称插件)
插件
NativeScript 插件是 npm 包,通常包含额外的原生功能。因此,发现、安装和删除 NativeScript 插件类似于在 Node.js 或其他前端 Web 开发中使用 npm 包的过程。
查找插件
NativeScript 团队维护着一个插件列表 此处。
插件也可以在 NativeScript 市场 或 npm 网站 上找到。
找不到合适的插件?您可以尝试在我们的 Discord 社区 上提问。或者您可以考虑 构建新的插件。
您还可以探索 @nativescript/core,它作为每个 NativeScript 应用程序的依赖项包含在内。可能您需要的功能已经存在。
安装插件
找到需要的插件后,可以使用 ns plugin add
命令将其安装到 NativeScript 应用程序中,该命令的行为类似于 npm install
,同时还会修改任何现有的平台项目(链接等)。
ns plugin add <plugin-name>
例如,以下命令安装 NativeScript 相机插件。
ns plugin add @nativescript/camera
除了使用 plugin add 之外,还可以使用 npm、yarn 或 pnpm 等包管理器。
npm install --save @nativescript/camera
安装 NativeScript 插件类似于安装 npm 包。NativeScript CLI 从 npm 下载插件,并将其添加到项目根目录的 node_modules 文件夹中。此过程还包括使用插件更新根 package.json 文件并解决其依赖项(如果有)。
将插件安装为开发依赖项
如上所示,命令 ns plugin add @nativescript/camera
等效于 npm i @nativescript/camera --save
。但是,在安装开发依赖项(例如 @nativescript/types 或 @nativescript/webpack)时,需要显式地将其保存为 devDependency。为此,请使用带有 --save-dev 标记的 npm install 命令。例如
npm i @nativescript/types --save-dev
注意
关于包处理,依赖项对于应用程序运行是必要的,而 devDependencies 仅在开发阶段需要。例如,@nativescript/camera 插件是运行时使用硬件相机所需的依赖项。相反,@nativescript/types 是一个开发依赖项,仅在开发过程中用于 IntelliSense。避免将 devDependencies
安装为 dependencies
,以防止大型输出构建文件并保持应用程序大小可控。您可以找到一个使用 dependencies
和 devDependencies
的 package.json
文件示例 此处。
导入和使用插件
安装完所需的插件后,就可以在项目中使用它了。务必仔细阅读插件的文档和 README 文件,因为每个插件可能都有特定的配置要求。以下代码片段演示了 @nativescript/camera 插件的基本用法
import { requestPermissions } from '@nativescript/camera'
requestPermissions()
import { requestPermissions } from '@nativescript/camera'
requestPermissions()
删除插件
要删除 NativeScript 插件,可以使用以下命令。
ns plugin remove <plugin-name>
例如,以下命令删除 NativeScript 相机插件。
ns plugin remove @nativescript/camera
与安装一样,删除 NativeScript 插件与删除 npm 包类似。
NativeScript CLI 从项目根目录的应用程序 node_modules 文件夹中删除插件文件。它还会删除插件的依赖项,并从项目的根 package.json 文件中删除插件。
包管理器
包管理器是软件,可以管理项目正常运行所需的外部代码。NativeScript CLI 使用 Node Package Manager (npm) 作为其默认包管理器。创建新应用程序时,CLI 会自动执行 npm install
以安装所有必需的依赖项。
支持的包管理器
NativeScript CLI 允许您 配置包管理器,该管理器用于处理依赖项。当您更改默认使用的 npm
包管理器时,CLI 会使用新设置的包管理器来执行与项目依赖项相关的所有操作,例如项目创建、管理依赖项等。
NativeScript CLI 支持三个包管理器
npm
- 这是默认选项yarn
- 您可以通过调用ns package-manager set yarn
来设置它。有关yarn
的更多信息,请访问 此处pnpm
- 从 6.4 版本开始,您可以使用pnpm
来管理应用程序的依赖项。您可以通过调用ns package-manager set pnpm
来使用pnpm
。注意:如果您自己调用pnpm
,则必须使用--shamefully-hoist
标记。CLI 在使用pnpm
安装依赖项时传递此标记,并且如果省略此标记,您的应用程序可能无法正常工作。有关pnpm
的更多信息,请访问 此处。
如果您想检查当前使用的包管理器,可以使用
ns package-manager get