Add search form submit #32 #45

Merged
jakob.scheid merged 20 commits from feature/search-form-submit into main 2026-05-14 11:29:19 +02:00
2 changed files with 31 additions and 19 deletions
Showing only changes of commit 261657d343 - Show all commits
+26 -11
View File
@@ -16,20 +16,35 @@ limitations under the License.
<script setup> <script setup>
const searchQuery = defineModel(); const searchQuery = defineModel();
import { useRouter } from 'vue-router';
const router = useRouter()
const props = defineProps(['autoSubmit'])
const submitSearch = function () {
if (props.autoSubmit !== undefined) {
router.push({
name: 'searchResults',
query: { q: searchQuery.value }
});
};
}
</script> </script>
<template> <template>
<div class="search-wrapper"> <form @submit.prevent="submitSearch">
<input <div class="search-wrapper">
v-model="searchQuery" <input
type="search" v-model="searchQuery"
name="search" type="search"
placeholder="Search..." placeholder="Search..."
required required
/> />
<button type="submit" class="search-button">Search</button> <button type="submit" class="search-button">Search</button>
</div> </div>
</template> </form>
</template>
<style scoped> <style scoped>
.search-wrapper { .search-wrapper {
+5 -8
View File
@@ -25,10 +25,7 @@ const router = useRouter();
const searchQuery = ref(''); const searchQuery = ref('');
const submitSearch = function () { const submitSearch = function () {
router.push({
name: 'searchResults',
query: { q: searchQuery.value }
})
}; };
</script> </script>
@@ -41,9 +38,9 @@ const submitSearch = function () {
</span> </span>
</header> </header>
<form class="search-form" @submit.prevent="submitSearch"> <div class="search-container">
<Searchbar v-model="searchQuery" ref="searchbar" /> <Searchbar v-model="searchQuery" ref="searchbar" auto-submit />
</form> </div>
</div> </div>
</template> </template>
@@ -79,7 +76,7 @@ const submitSearch = function () {
font-size: small; font-size: small;
} }
.search-form { .search-container {
width: 70%; width: 70%;
max-width: 624px; max-width: 624px;
} }