Skip to content

Commit 9b74744

Browse files
authored
fix: fix search with no content. (#1878)
1 parent 9832805 commit 9b74744

File tree

2 files changed

+28
-7
lines changed

2 files changed

+28
-7
lines changed

src/plugins/search/search.js

+8-7
Original file line numberDiff line numberDiff line change
@@ -211,14 +211,15 @@ export function search(query) {
211211
}
212212

213213
const matchContent =
214+
handlePostContent &&
214215
'...' +
215-
handlePostContent
216-
.substring(start, end)
217-
.replace(
218-
regEx,
219-
word => `<em class="search-keyword">${word}</em>`
220-
) +
221-
'...';
216+
handlePostContent
217+
.substring(start, end)
218+
.replace(
219+
regEx,
220+
word => `<em class="search-keyword">${word}</em>`
221+
) +
222+
'...';
222223

223224
resultStr += matchContent;
224225
}

test/e2e/search.test.js

+20
Original file line numberDiff line numberDiff line change
@@ -176,4 +176,24 @@ test.describe('Search Plugin Tests', () => {
176176
await searchFieldElm.fill('hello');
177177
await expect(resultsHeadingElm).toHaveText('Changelog Title');
178178
});
179+
test('search when there is no body', async ({ page }) => {
180+
const docsifyInitConfig = {
181+
markdown: {
182+
homepage: `
183+
# EmptyContent
184+
---
185+
---
186+
`,
187+
},
188+
scriptURLs: ['/lib/plugins/search.min.js'],
189+
};
190+
191+
const searchFieldElm = page.locator('input[type=search]');
192+
const resultsHeadingElm = page.locator('.results-panel h2');
193+
194+
await docsifyInit(docsifyInitConfig);
195+
196+
await searchFieldElm.fill('empty');
197+
await expect(resultsHeadingElm).toHaveText('EmptyContent');
198+
});
179199
});

0 commit comments

Comments
 (0)