介绍
本示例主要介绍在使用Navigation实现页面跳转时,如何在跳转页面得到转入页面传的类对象的方法。实现过程中使用了第三方插件class-transformer,传递对象经过该插件的plainToClass方法转换后可以直接调用对象的方法,
效果图预览
使用说明
- 从首页进入本页面时,会传递一个类对象UserBookingInfo。点击“换个座位”按钮会调用该类对象的generateRandSeatNo()方法,该方法随机生成一个座位号。
实现思路
-
在oh-package.json5中添加第三方插件class-transformer的依赖
"dependencies": { "class-transformer": "^0.5.1" }
-
在使用第三方插件class-transformer的页面导入class-transformer库。
import { plainToClass } from "class-transformer";
-
定义要传递的类
// 定义一个用户类 export class UserBookingInfo { userName: string = '张山'; // 姓名 userID: string = '332045199008120045'; // 证件号 date: string = '1月1日' // 日期 seatNo: number = 0; // 座位号 price: number = 200; // 价格 constructor(name: string, id: string, date: string) { this.userName = name; this.userID = id; this.date = date; } // 获取随机座位号 generateRandSeatNo(): number { this.seatNo = Math.floor(Math.random() * (200 - 1) + 1); // 获取200以内随机号 return this.seatNo; } }