提供了一个命令行选择器的类,以及对应的方法,和对应的使用示例。
npm install syor-cli-selectorjs
// 使用quickSelect调用;
async function quickSelect() {
const example_framworks = [
{ name: "Vue.js", type: "前端框架", stars: "200k+" },
{ name: "React", type: "前端库", stars: "198k+" },
{ name: "Angular", type: "前端框架", stars: "85k+" },
{ name: "Svelte", type: "编译器", stars: "65k+" },
{ name: "Next.js", type: "React框架", stars: "100k+" },
{ name: "Nuxt.js", type: "Vue框架", stars: "42k+" },
];
return createSelector({
message: "选择全栈框架配置:",
items: example_framworks.map((f) => ${f.name} (${f.type}) - ⭐${f.stars}),
});
}
`
`js
// 使用构造函数调用
import { EnhancedInteractiveSelect } from './enhanced-interactive-select.js';
async function advancedSelect() {
const selector = new EnhancedInteractiveSelect({
message: "请选择您喜欢的编程语言:",
items: ["JavaScript", "TypeScript", "Python", "Go", "Rust", "Java", "C++"],
pageSize: 4,
initialIndex: 2,
styles: {
selected: "\x1b[36m", // 青色选中项
pointer: "👉", // 自定义指针图标
normal: "\x1b[90m" // 灰色普通项
}
});
try {
const result = await selector.prompt();
console.log(选择结果:, result);
return result;
} catch (error) {
console.error("选择过程出错:", error);
}
}
``