Skip to content

Commit 38a3b91

Browse files
committed
Navigate to search page
1 parent f26afcf commit 38a3b91

File tree

2 files changed

+32
-11
lines changed

2 files changed

+32
-11
lines changed
Lines changed: 21 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,41 @@
1-
@inject AppConfiguration _configuration
1+
@inject AppConfiguration configuration
2+
@inject NavigationManager navigationManager
23

34
<header class="nav-header">
45
<nav class="nav">
56
<div class="container">
67
<div class="logo">
7-
<a href="#">@_configuration.BlogName</a>
8+
<a href="#">@configuration.BlogName</a>
89
</div>
910
<div id="mainListDiv" class="main_list">
1011
<ul class="navlinks">
1112
<li><a href="#">Home</a></li>
12-
@if (_configuration.HasLinkedinAccount)
13+
@if (configuration.HasLinkedinAccount)
1314
{
14-
<li><a target="_blank" href="@_configuration.LinkedinAccountUrl"><i class="fab fa-linkedin"></i> LinkedIn</a></li>
15+
<li><a target="_blank" href="@configuration.LinkedinAccountUrl"><i class="fab fa-linkedin"></i> LinkedIn</a></li>
1516
}
16-
@if (_configuration.HasGithubAccount)
17+
@if (configuration.HasGithubAccount)
1718
{
18-
<li><a target="_blank" href="@_configuration.GithubAccountUrl"><i class="fab fa-github"></i> Github</a></li>
19+
<li><a target="_blank" href="@configuration.GithubAccountUrl"><i class="fab fa-github"></i> Github</a></li>
1920
}
2021
<AccessControl></AccessControl>
2122
<li>
22-
<SearchInput></SearchInput>
23+
<SearchInput SearchEntered="NavigateToSearchPage"></SearchInput>
2324
</li>
2425
</ul>
2526
</div>
2627
</div>
2728
</nav>
28-
</header>
29+
</header>
30+
31+
@code {
32+
private void NavigateToSearchPage(string searchTerm)
33+
{
34+
if (string.IsNullOrWhiteSpace(searchTerm))
35+
{
36+
return;
37+
}
38+
39+
navigationManager.NavigateTo($"search/{Uri.EscapeDataString(searchTerm.Trim())}");
40+
}
41+
}
Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,17 @@
11
<div class="search-bar">
2-
<input type="text" class="search-bar-input" placeholder="search" aria-label="search"/>
3-
<button class="search-bar-button" aria-label="search submit"><i class="fas fa-search"></i></button>
2+
<input type="text" class="search-bar-input" placeholder="search" aria-label="search" @bind-value="searchTerm"/>
3+
<button class="search-bar-button" aria-label="search submit" @onclick="CallSearchEntered"><i class="fas fa-search"></i></button>
44
</div>
55

66
@code {
7+
private string searchTerm = string.Empty;
8+
79
[Parameter]
8-
public string Value { get; set; }
10+
public EventCallback<string> SearchEntered { get; set; }
11+
12+
private async Task CallSearchEntered()
13+
{
14+
await SearchEntered.InvokeAsync(searchTerm);
15+
}
16+
917
}

0 commit comments

Comments
 (0)