vuux
Version:
Vue3 Nuxt3 Nuxt4 组件库
14 lines (13 loc) • 468 B
JavaScript
import { computed as r } from "vue";
const u = (e) => {
const n = r(() => {
const t = e.keyWords?.filter(Boolean);
return t?.length ? new RegExp(`(${t.sort((l, o) => o.length - l.length).join("|")})`, `${e.ignoreCase ? "i" : ""}g`) : null;
});
return {
renderTexts: r(() => !n.value || !e.content ? [{ isKey: !1, text: e.content }] : e.content.split(n.value).map((t) => ({ isKey: n.value.test(t), text: t })))
};
};
export {
u as useHighlight
};