如何解决本地函数在 Vue 中不起作用使用 useWebWorkerFn
我正在尝试使用 useWebWorkerFn
过滤对象数组
以下是我执行相同操作的代码
import { useWebWorkerFn } from '@vueuse/core'
import { doLowerCase } from './filtering.js'
async function asyncDataSearch(data,searchWords) {
const { workerFn } = useWebWorkerFn(dataSearch,{
dependencies: [
'https://cdn.jsdelivr.net/npm/lodash-es@4.17.21/every.js','https://cdn.jsdelivr.net/npm/lodash-es@4.17.21/includes.js'
],})
const filteredData = await workerFn(data,searchWords)
return filteredData
}
async function dataSearch(data,searchWords) {
return data.filter((e) => {
let isTrueName = true;
if (searchWords.length > 0) {
const myBigStr = doLowerCase(
.trim(
`${e.fname}${e.lname} ${e.cname}`
);
isTrueName = _.every(searchWords,(el) => _.includes(myBigStr,el));
}
return isTrueName;
});
}
下面是 filtering.js
文件中的 doLowerCase 函数。
export function doLowerCase(myText = "") {
if (myText) {
return myText.toLowerCase();
} else {
return "";
}
}
现在的问题是当我添加 lodash.min.js cdn url 时 lodash 函数可以工作,但是当我尝试添加每个函数的依赖项时,我不想导入整个 lodash 包{{3} }.它显示无法导入脚本的错误。同样在上面的代码中,doLowerCase
是另一个文件中存在的函数,该函数无法正常工作,因为它不可访问,我如何按预期导入和使用该函数。欲了解更多信息,请访问 here
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。