跳到主要内容

showPicker

显示选择框,共有四种类型:单列、多列、日期、时间。

参数、返回值

单列

interface SingleColumnPickerConfig {
index: number; // 选中的选项
column: string[];
}

返回值类型为Promise<MResponseWithData<number | null | undefined>>,用选择并确认后才会有返回值 (number 类型,为选项在 column 数组中的下标)。

多列

interface MultipleColumnsPickerConfig {
index: number[]; // 选中的选项
columns: string[][];
}

返回值类型为Promise<MResponseWithData<number[] | null | undefined>>,用选择并确认后才会有返回值 (number[] 类型,为每个选项依次在 columns 数组中的下标)。

日期

interface DateAndTimePickerConfig {
start?: string; // 开始日期
end?: string; // 结束日期
value?: string; // 选中日期
dateFormat?: string; // yyyy-MM-dd
}

返回值类型为string,是格式化后的日期字符串。

时间

interface DateAndTimePickerConfig {
start?: string; // 开始时间
end?: string; // 结束时间
value?: string; // 选中时间
dateFormat?: string; // HH:mm:ss
}

返回值类型为string,是格式化后的时间字符串。

Example

单列

import { showPicker } from "minip-bridge";

const column = ["🍎", "🥝", "🍓", "🍈", "🍑"];
showPicker("singleColumn", {
column,
index: 0,
}).then((res) => {
if (res.hasData()) {
const selected = res.data;
console.log(`selected ${column[selected]}, index: ${selected}`);
} else {
console.log("canceled");
}
});

多列

import { showPicker } from "minip-bridge";

const columns = [
["🍎", "🥝", "🍓"],
["🍈", "🍑"],
];
showPicker("multipleColumns", {
columns,
index: [0, 1],
}).then((res) => {
if (res.hasData()) {
const selected = res.data;
let msg = "";
for (let index = 0; index < selected.length; index++) {
const i = selected[index];
msg += columns[index][i];
}
console.log(`selected ${msg}`);
} else {
console.log("canceled");
}
});

日期

import { showPicker } from "minip-bridge";

showPicker("date", {
dateFormat: "yyyy-MM-dd",
}).then((res) => {
if (res.hasData()) {
const selected = res.data;
console.log(`selected ${selected}`);
} else {
console.log("canceled");
}
});

时间

import { showPicker } from "minip-bridge";

showPicker("time", {
dateFormat: "HH:mm:ss",
}).then((res) => {
if (res.hasData()) {
const selected = res.data;
console.log(`selected ${selected}`);
} else {
console.log("canceled");
}
});