-
-
Notifications
You must be signed in to change notification settings - Fork 502
/
Copy pathindex.html
68 lines (62 loc) · 1.35 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, height=device-height">
<title>Example: browser-legacy-basic-resolver</title>
</head>
<body style="white-space: pre">
<script src="https://cdn.jsdelivr.net/gh/nextapps-de/flexsearch@0.8.1/dist/flexsearch.bundle.min.js"></script>
<script>
// create a simple index which can store id-content-pairs
const index = new FlexSearch.Index({
tokenize: "forward"
});
// some test data
const data = [
'cats abcd efgh ijkl dogs pigs rats cute',
'cats abcd efgh ijkl dogs pigs cute',
'cats abcd efgh ijkl dogs cute',
'cats abcd efgh ijkl cute',
'cats abcd efgh cute',
'cats abcd cute',
'cats cute'
];
// add data to the index
data.forEach((item, id) => {
index.add(id, item);
});
// perform query
const result = new FlexSearch.Resolver({
index: index,
query: "black"
})
.or({
index: index,
query: "cute"
})
.and([{
index: index,
query: "dog"
},{
index: index,
query: "cat"
}])
.not({
index: index,
query: "rat"
})
.resolve();
// display results
result.forEach(i => {
console.log(data[i]);
log(data[i]);
});
function log(str){
document.body.appendChild(
document.createTextNode(str + "\n")
);
}
</script>
</body>
</html>