diff --git a/packages/gitbook-plugin-search/src/actions/search.js b/packages/gitbook-plugin-search/src/actions/search.js index 6f8f8ad06..6cea419ee 100644 --- a/packages/gitbook-plugin-search/src/actions/search.js +++ b/packages/gitbook-plugin-search/src/actions/search.js @@ -66,6 +66,20 @@ function handleQuery(q) { }; } +/** + * Refresh current search (when handlers have changed) + * @return {Action} + */ +function refresh() { + return (dispatch, getState) => { + const q = getState().search.query; + console.log('refresh search with', q); + if (q) { + dispatch(handleQuery(q)); + } + }; +} + /** * Clear the whole search * @return {Action} @@ -81,7 +95,10 @@ function clear() { * @return {Action} */ function registerHandler(name, handler) { - return { type: TYPES.REGISTER_HANDLER, name, handler }; + return (dispatch) => { + dispatch({ type: TYPES.REGISTER_HANDLER, name, handler }); + dispatch(refresh()); + }; } /** @@ -90,7 +107,10 @@ function registerHandler(name, handler) { * @return {Action} */ function unregisterHandler(name) { - return { type: TYPES.UNREGISTER_HANDLER, name }; + return (dispatch) => { + dispatch({ type: TYPES.UNREGISTER_HANDLER, name }); + dispatch(refresh()); + }; } module.exports = { diff --git a/packages/gitbook-plugin-search/src/components/Results.js b/packages/gitbook-plugin-search/src/components/Results.js index 89fb5311b..85e613322 100644 --- a/packages/gitbook-plugin-search/src/components/Results.js +++ b/packages/gitbook-plugin-search/src/components/Results.js @@ -11,7 +11,9 @@ const Result = React.createClass({ return (
-

{result.title}

+

+ {result.title} +

{result.body}

); @@ -36,7 +38,7 @@ const SearchResults = React.createClass({ return (

{i18n.t('SEARCH_RESULTS_TITLE', { query, count: results.size })}

-
+
{results.map((result, i) => { return ; })}