tns-template-master-detail-kinvey-ts
用于显示来自 Kinvey 的项目集合的 Master-detail 界面,可以检查和编辑所选项目的属性。
npm i --save tns-template-master-detail-kinvey-ts

NativeScript Core with TypeScript Master Detail Template

应用模板可以帮助您通过内置 UI 元素和最佳实践快速启动原生跨平台应用程序。在创建新应用程序时,您可以节省重复编写样板代码的时间。

此 Master-Detail 模板是任何显示对象集合及其详细信息的应用程序的基本构建块,并且需要在在线和离线模式下同时使用 Kinvey 作为后端。模板使用 RadListView 组件来显示主列表。RadListView 组件是 Progress NativeScript UI 的一部分。

关键特性

  • 可编辑的 Master-detail 界面
  • 与 Kinvey 数据库集成
  • 离线工作
  • 可自定义的主题
  • UX 和开发最佳实践
  • 易于理解的代码

快速入门

执行以下命令以从该模板创建应用程序

tns create my-master-detail-kinvey-ts --template tns-template-master-detail-kinvey-ts

注意:此命令将创建一个使用最新版本的此模板发布的 NativeScript 应用程序。

如果您想创建一个使用模板的 master 分支源的新应用程序,可以执行以下操作

# clone nativescript-app-templates monorepo locally
git clone [email protected]:NativeScript/nativescript-app-templates.git

# create app template from local source (all templates are in the 'packages' subfolder of the monorepo)
tns create my-master-detail-kinvey-ts --template nativescript-app-templates/packages/template-master-detail-kinvey-ts

教程

架构

应用程序根模块位于

  • /app/app-root - 设置一个 Frame,让您在页面之间导航。

模板具有以下页面模块

  • /app/cars/cars-list-page - 主列表页面。获取数据并在列表中显示。在项目上点击时,它将导航到项目详情页面。
  • /app/cars/car-detail-page/car-detail-page - 项目详情页面。显示点击的项目详情。有一个 编辑 按钮可导航到编辑页面。
  • /app/cars/car-detail-edit-page/car-detail-edit-page - 项目详情编辑页面。为所选项目提供编辑选项。点击 完成 按钮保存更改。

有一个模型来表示数据项

  • /app/cars/shared/car-model

模板还提供了一个数据服务

  • /app/cars/shared/car-service - 作为主-detail 数据项的数据层。包装用于在数据库上执行操作的函数。

Kinvey 集成

模板使用 {N} Kinvey 插件。初始化在应用程序启动前在 /app/app.ts 文件中完成。初始化脚本位于 /app/shared/kinvey.common.ts

[可选] Kinvey 数据库设置

按照设计,应用程序连接到 Kinvey 中样本数据的只读副本。如果您想看到“编辑”功能的效果,您必须克隆样本数据并更新应用程序配置以指向您自己的 Kinvey 设置。您可以在此找到如何实现此操作的详细说明 此处

样式

此模板配置为使用SASS进行样式设置。所有使用的类都基于{N}核心主题——请查阅文档了解如何自定义它。

它包含3个全局样式文件,位于应用文件夹的根目录

  • /app/_app-common.scss - 全局通用样式表。这些样式规则应用于Android和iOS。
  • /app/app.android.scss - 全局Android样式表。这些样式规则仅应用于Android。
  • /app/app.ios.scss - 全局iOS样式表。这些样式规则仅应用于iOS。

每个组件在其文件夹中都有3个样式文件

  • ../_{page-name}-common.scss - 组件通用样式表。这些样式规则应用于Android和iOS。
  • ../{page-name}.android.scss - 组件Android样式表。这些样式规则仅应用于Android。
  • ../{page-name}.ios.scss - 组件iOS样式表。这些样式规则仅应用于iOS。

获取帮助

当您遇到问题时,NativeScript框架有一个充满活力的社区可以提供帮助。

尝试加入NativeScript社区Slack。Slack频道是获取帮助、解决问题以及与其他NativeScript开发者交流的绝佳地方。

如果您发现此模板存在问题,请通过NativeScript仓库报告问题。

贡献

我们热爱PR,并乐意接受。请随时提出更改和新想法。我们将进行审查和讨论,以确保它们被接受并更好地整合。

注意:请记住,master分支可能引用了尚未在NPM上的依赖项!