提交 4b2fdb15 编写于 作者: X xjh22222228

fix: img error

上级 030630e6
......@@ -30,7 +30,7 @@ export function randomInt(max: number) {
export function fuzzySearch(navList: any[], keyword: string) {
let searchResultList = [{ nav: [] }]
return function f(arr?: any[]) {
function f(arr?: any[]) {
arr = arr || navList
for (let i = 0; i < arr.length; i++) {
......@@ -59,9 +59,11 @@ export function fuzzySearch(navList: any[], keyword: string) {
}
}
}
return searchResultList
}
f()
return searchResultList
}
export function totalWeb(): number {
......
......@@ -64,6 +64,7 @@
[src]="el.icon || item.icon"
alt=""
class="icon"
(error)="onImgError($event)"
>
<ng-template #icon>
<span class="icon"></span>
......
import nav from '../../../../data';
import { Component } from '@angular/core';
import { Router, ActivatedRoute } from '@angular/router';
import { debounce } from '../../../utils';
import { debounce, fuzzySearch } from '../../../utils';
import { appLanguage, GIT_REPO_URL } from '../../../../config';
import { annotate } from 'rough-notation';
......@@ -51,7 +51,8 @@ export default class HomeComponent {
}
if (this.search) {
this.list = fuzzySearch()();
this.list = fuzzySearch(this.nav, this.search);
this.searchLoading = false;
} else {
initList();
}
......@@ -61,43 +62,6 @@ export default class HomeComponent {
}
});
function fuzzySearch() {
let searchList = [{ nav: [] }];
that.searchLoading = false;
return function f(arr?: any[]) {
arr = arr || that.nav;
for (let i = 0; i < arr.length; i++) {
if (Array.isArray(arr[i].nav)) {
f(arr[i].nav);
}
if (arr[i].name) {
const name = arr[i].name.toLocaleLowerCase();
const desc = arr[i].desc.toLocaleLowerCase();
const search = that.search.toLocaleLowerCase();
if (~name.indexOf(search) || ~desc.indexOf(search)) {
try {
let result = Object.assign({}, arr[i]);
const regex = new RegExp(`(${that.search})`, 'i');
result.name = result.name.replace(regex, `$1`.bold())
result.desc = result.desc.replace(regex, `$1`.bold())
const idx = searchList[0].nav.findIndex(item => item.name === result.name);
if (idx === -1) {
searchList[0].nav.push(result);
}
} catch (err) {}
}
}
}
return searchList;
};
}
this.handleSearch = debounce(() => {
if (!this.search) {
initList();
......@@ -184,4 +148,8 @@ export default class HomeComponent {
equeue.push(annotation);
annotation.show();
}
onImgError = (e) => {
e.target.src = 'assets/img/transparent.gif'
}
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册