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");
}
});