- 版本:0.1.38
- GitHub: https://github.com/mpbnyc/nativescript-ngx-fusion-library
- NPM: https://npmjs.net.cn/package/nativescript-ngx-fusion-library
- 下载
- 昨天: 0
- 上周: 0
- 上个月: 0
开发 NativeScript 插件 
此存储库基于 @NathanWalker 的 插件种子 构建而成。感谢 Nathan!
TL;DR
NativeScript 插件种子是为 NativeScript 插件开发者构建的,可作为起点使用。要启动您的插件开发,请执行以下操作
git clone https://github.com/NativeScript/nativescript-plugin-seed nativescript-yourplugin
其中nativescript--yourplugin
是您插件的名称。cd nativescript-yourplugin/src
npm run postclone
npm run demo.ios
或npm run demo.android
以运行演示。- 在另一个命令提示符/终端中
npm run plugin.tscwatch
以监视插件中的 TypeScript 变更并自动将其应用于演示。
详细说明
什么是 NativeScript 插件种子?
NativeScript 插件种子是为 NativeScript 插件开发者构建的,可作为起点使用。它扩展了以下内容 在这里展示。种子提供了哪些功能?
- 插件结构,具有易于开发和调试的选项(请参阅以下 开发设置部分)
- 一个简单的可工作插件
- 一个与插件一起工作的演示项目。它在开发和通过 Travis CI 运行测试时非常有用。
- 插件测试
- 有关如何构建将发布到 NPM 的插件 README 文件的指南
- 用于创建您的插件包的 shell 脚本
- 适当的
.gitignore
以保持 GitHub 有序 - 适当的
.npmignore
以确保您将插件发布到 NPM 时每个人都满意。
插件文件夹结构
文件夹/文件名称 | 描述 |
---|---|
demo | 插件演示源代码 |
demo/tests | 您插件的测试 |
src | 插件源代码 |
src/platform/android | 插件 Android 特定配置 |
src/platform/ios | 插件 ios 特定配置 |
src/README | 您的插件 README 模板,解释其他开发者如何在其应用程序中使用您的插件。当您将插件发布到 NPM 时使用。在 postclone 步骤中,根目录中的 README 被替换为此模板。 |
src/scripts | 当您执行 npm run postclone 时运行的 postclone 脚本。您可以在从 入门部分 执行 postclone 步骤后删除它。 |
publish | 包含用于创建和发布您的包的 shell 脚本。有关创建包和发布的更多信息,请参阅 发布到 NPM 部分 |
入门
- 打开命令提示符/终端并执行
git clone https://github.com/NativeScript/nativescript-plugin-seed nativescript-yourplugin
将插件模板仓库克隆到nativescript-yourplugin
文件夹中,其中nativescript-yourplugin
是您的插件名称。 - 打开命令提示符/终端并导航到
nativescript-yourplugin/src
文件夹,使用cd nativescript-yourplugin/src
- 执行
npm run postclone
- 配置您的 GitHub 用户名 - 它将为您在 package.json 中更改
- 配置您的插件名称 - 模板中的所有文件和类都将为您重命名
- 创建插件 README.md 文件的占位符
- 为您创建一个新的插件仓库
- 使用
npm link your plugin
将您的插件链接到演示应用 - 这将安装插件依赖并将在演示项目中添加插件代码的符号链接,允许您在演示中修改并预览更改,而无需每次修改时添加/删除插件。 了解更多关于 npm link 的信息。如果您遇到 "EACCES" 权限拒绝错误,请修复您的全局 npm 权限,这已经在 这里 解释得非常清楚。
现在您可以使用下面的 开发环境搭建 继续您的插件开发。
开发环境搭建
为了便于开发和调试,请继续以下步骤
- 打开命令提示符/终端,导航到
src
文件夹并运行npm run demo.ios
或npm run demo.android
以运行演示。 - 打开另一个命令提示符/终端,导航到
src
文件夹并运行npm run plugin.tscwatch
以监视插件中的文件更改。
现在您可以修改您的插件。更改将自动应用到演示项目中。
注意:如果您需要在插件中使用本地库或在 Info.plist/AndroidManifest.xml 中进行一些更改,这些更改只能通过 npm link 应用于演示项目。在这种情况下,您需要从 demo
中使用 tns plugin add ../src
以将本地库和上述文件的更改应用到演示。然后,您可以从 src
中再次使用 npm run plugin.link
链接您的插件代码。
链接到 CocoaPod 或 Android Arsenal 插件
为了使用本地 API,您需要在 src
文件夹中创建以下文件夹和文件:
platforms --
ios --
Podfile
android --
include.gradle
这样做将为您的插件打开这些本地 API :)
请参考以下现有插件了解如何简单地实现这一点:
清理插件和演示文件
有时您可能需要删除 node_modules
和 demo/platforms
文件夹并重新安装它们。
- 运行
npm run clean
删除它们,然后您可以运行npm i
重新安装依赖。
单元测试
插件模板自动为您的插件添加基于 Jasmine 的单元测试支持。打开 demo/app/tests/tests.js
并调整其内容,以便测试在您插件的上下文中变得有意义。
您可以在此处了解更多关于此主题的信息 here。
一旦您准备好测试插件的 API,请转到 src
文件夹并执行以下命令之一
npm run test.ios
npm run test.android
发布到 NPM
当您准备好发布时
- 在
src/package.json
中增加版本号 - 转到
publish
并执行publish.sh
(如果文件不可执行,请运行chmod +x *.sh
)
如果您只想创建一个包,请转到 publish
文件夹并执行 pack.sh
。包将创建在 publish/package
文件夹中。
注意:要在 Windows 上运行 bash 脚本,您可以安装 GIT SCM 并使用 Git Bash。
TravisCI
插件结构附带了一个功能齐全的 .travis.yml 文件,该文件可以在 Android 模拟器和 iOS 模拟器上部署测试应用,并在 单元测试部分 中运行测试。在克隆仓库并实现您的插件和测试后,您只需在 https://travis-ci.org/ 上注册即可。然后,在 "https://travis-ci.org/profile/
为了正确显示当前构建状态,您需要编辑 README.md 文件开头的徽章,使其与您的仓库、用户和分支匹配。