blazor 相关问题

Blazor是一个Web框架,允许开发人员在.NET中编写客户端代码。它是ASP.NET Core的一部分,称为“Razor Components”。

如何将外部 JS 脚本添加到 Blazor 页面

我正在尝试将 Stripe 付款集成到我的 Blazor 应用程序中。正如预测的那样,我的页面上必须有一个 标签。 https://stripe.com/docs/billing/quickstart 我的问题是,...</desc> <question vote="5"> <p>我正在尝试将 Stripe 付款集成到我的 Blazor 应用程序中。正如预测的那样,我的页面上必须有一个 <pre><code>&lt;script&gt;</code></pre> 标签。</p> <p><a href="https://stripe.com/docs/billing/quickstart" rel="noreferrer">https://stripe.com/docs/billing/quickstart</a></p> <p>我的问题是,如何将此脚本标记添加到 Blazor 中的 Razor 页面。我已经使用互操作来定义我自己的 JS 文件并调用它们的方法,但我需要将此脚本添加到 DOM 中。</p> <p>本文档仅向我展示如何连接到我自己的 JavsScript 文件:</p> <p><a href="https://learn.microsoft.com/en-us/aspnet/core/blazor/javascript-interoperability/call-javascript-from-dotnet?view=aspnetcore-6.0#javascript-isolation-in-javascript-modules" rel="noreferrer">https://learn.microsoft.com/en-us/aspnet/core/blazor/javascript-interoperability/call-javascript-from-dotnet?view=aspnetcore-6.0#javascript-isolation-in-javascript-modules</a> </p> </question> <answer tick="false" vote="2"> <p>您可以使用 blazor wasm 的新功能并使用 JSExportAttribute 和 JSImportAttribute 并处理 .net 中的 js 模块 您也可以阅读文档<a href="https://learn.microsoft.com/en-us/aspnet/core/blazor/javascript-interoperability/?view=aspnetcore-7.0" rel="nofollow noreferrer">这里</a></p> <p><strong>编辑于2023年10月10日</strong></p> <p>在 .NET 8 中,您可以使用 <pre><code>&lt;script&gt;</code></pre> 标签在剃刀组件和页面中添加外部 JS 文件,并且编译器在使用该文件时不再出现错误</p> </answer> <answer tick="false" vote="0"> <p>Sajjad Arash 的继续回答<strong> 在页面底部添加:</strong> </p><code>&lt;script src=&#34;../Components/Pages/Component.razor.js&#34;&gt;&lt;/script&gt; </code><pre> </pre> </answer></body>

回答 0 投票 0

Blazor、会话存储和弃用参考库

在研究在 Blazor 应用程序中实现简单的会话存储时,我发现了对 Microsoft.AspNetCore.Components.Server.ProtectedBrowserStorage 的多个引用以及似乎是一些...

回答 1 投票 0

在 Blazor Server 中创建自定义组件

我想创建一个组件,使用户能够从原告列表中**自动完成**,此外还允许他们**创建**一个新原告(如果**找不到结果**)。我知道那...

回答 1 投票 0

何时使用 Blazor 自动交互模板?

我正在阅读文档和资源,但仍然不明白何时应该使用 *.Client 项目,该项目附带来自 blazor -int Auto Examples 的模板。 所以客户项目是一个

回答 1 投票 0

dotnet 如何知道 _Imports.razor 在哪里?

使用 dotnet 创建 Blazor 项目时,会在 Components 目录中创建新的 blazor _Imports.razor。运行良好。 我的服务器端 Blazor 项目已从 .NET Co 逐渐“变异”...

回答 1 投票 0

从剃刀组件所在的父页面拉取参数

这是我页面的一部分。 @page“/campaigns/{id:int}” @inject ICampaignService CampaignService @inject NavigationManager 导航管理器 活动详情页面 这是我页面的一部分。 @page "/campaigns/{id:int}" @inject ICampaignService CampaignService @inject NavigationManager NavigationManager <PageTitle>Campaign Detail Page</PageTitle> @if (campaign == null) { <span>@message</span> <p><button class="btn btn-primary" @onclick="(() => ShowAll())">Back to Campaigns</button></p> } else { <div class="row"> <div class="col-sm-8"> <div class="container p-3 my-3 border"> <h1>@campaign.Title</h1> <p>@campaign.Description</p> <p>This container has a border and some extra padding and margins.</p> </div> </div> <div class="col-sm-4"> <ChaptersByCampaignList /> 这是 ChaptersByCampaignList 组件。 @inject IChapterService ChapterService <h3>Chapters</h3> <ul class="list-group"> @if (ChapterService.ChaptersByCampaign == null) { <li class="list-group-item">No Chapters</li> } else { @foreach (var dbObject in ChapterService.ChaptersByCampaign) { <li class="list-group-item">@dbObject.OrderIndex - @dbObject.Title</li> } } </ul> @code { [Parameter] public int Id { get; set; } protected override async Task OnParametersSetAsync() { await ChapterService.GetAllByCampaignId(Id); } } ChaptersService 有这些代码片段。 public List<Chapter> Chapters { get; set; } public List<Chapter> ChaptersByCampaign { get; set; } public async Task GetAllByCampaignId(int id) { var response = await _httpClient.GetFromJsonAsync<List<Chapter>>($"api/chapters/campaign/{id}"); if (response != null) ChaptersByCampaign = response; } 首先,ChaptersByCampaignList 组件似乎没有通过 URL 获取 CampaignId 传递,通过调试我可以看到它一直设置为 0。我需要从传递 URL @page "/campaigns/{ id:int}" 谢谢! 当然,当我提交这篇文章时,我就有了一个想法。只需这样做 <ChaptersByCampaignList Id="@Id" /> 将参数传递给组件。

回答 1 投票 0

使用 GetFromJsonAsAsyncEnumerable 发送对象

通过 MinimalAPI 和 FastEndpoints 使用 .net8.0 Blazor Web 应用程序。目前,要将对象发送到返回列表的 get 请求,我正在使用 var req = new GetAgencyListRequest() ...

回答 1 投票 0

如何在 Blazor 中创建动态基本路径

我在 .NET 8 中有一个 blazor 应用程序。我的 App.razor 文件如下所示; 我在 .NET 8 中有一个 blazor 应用程序。我的 App.razor 文件如下所示; <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <base href="/" /> <link rel="stylesheet" href="bootstrap/bootstrap.min.css" /> <link rel="stylesheet" href="app.css" /> <link rel="icon" type="image/png" href="favicon.png" /> <HeadOutlet /> </head> <body> <Routes /> <script src="_framework/blazor.web.js"></script> </body> </html> 在本地运行时,引导文件和所有重定向都会成功运行。但是,在测试环境中,无法访问引导程序文件,因为我的应用程序在测试环境中以类似 test.blabla.com/appname 的地址打开。 我期待在 test.blabla.com/appname/bootstrap/bootstrap.min.css 下搜索引导程序文件,但它不会在此地址中搜索它搜索 test.blabla.com/bootstrap/bootstrap.min.css所以找不到。 我尝试使用 <base href="~/" /> 和 <base href="@NavigationManager.BaseUri" /> 代替 <base href="/" /> 但没有用。通过输入 <base href="appname/" /> 问题就解决了,但是这次在本地出现错误。我该如何解决这个问题? 你可以这样做: @inject IHostEnvironment Env @if (Env.IsDevelopment()) { <base href="/appname/" /> } else { <base href="/" /> } 相应地调整 if 条件,例如检查您的环境变量或其他所需的逻辑。

回答 1 投票 0

外层 div 上的 LostFocus 会触发内层 div

我有: 我有: <div @onfocusout="@((e) => HidedicList(e))"> <input for="toggleVendors" class="form-control label-toggle" placeholder="Vendor Information" @onchange="selectedValue" @onfocus="@((e) => ShowdicList(e))" /> <input type="checkbox" id="toggleVendors" class="hidden-checkbox" > <div id="diclist" class="@showhide"> <ul> @foreach (var item in (Dictionary<int,string>)this.selectListItems.Items) { <li><input type="checkbox" id="@item.Key" @onchange="@((e) => CheckboxChanged(e, @item.Key))" value="@item.Value" /> @item.Value</li> } </ul> </div> </div> 我正在尝试“滚动我自己的”下拉菜单(有充分的理由为什么我不能使用现有的方法,例如带有选项的数据列表),当焦点在整个 div 上丢失时,一切似乎都可以接受,我想关闭内部 div 。因此,我单击输入框,内部 div 显示我的项目。一旦我开始尝试选择列表中的一个复选框,onfocusout 事件就会在我的外部 div 上触发。如果我将事件移动到内部 div,它不会立即触发事件,但在我选择列表中的复选框后它仍然会触发。 首先,不知道为什么,但在这种情况下箭头功能对我不起作用。尝试去做 其次,据我所知 onfocusout 不适用于 div,有一个 hack 可以定义 tabIndex 使其工作:

回答 1 投票 0

Blazor 的 MediatR 通知 (WASM) - 事件处理程序不更新 UI

我正在尝试在客户端 Blazor 应用程序中连接 MediatR,纯粹是为了处理组件之间的事件通知。 事件已发布,并由带有

回答 2 投票 0

Blazor Maui Hybrid Android 无法显示应用程序数据目录中的视频 - 即使使用自定义文件提供程序

我一直在使用这里建议的解决方案,在 BlazorWebView 中显示存储在应用程序数据目录中的音频和视频。这些文件在 Windows 上正确呈现,但在 Android 上却无法...

回答 1 投票 0

MSAL 身份验证 - WASM Web 应用程序 - 无法构造 URL

我需要你们聪明人的帮助。 我需要使用 EntraID 进行 msal 身份验证。我有一个 net 6 wasm 应用程序,但遇到了愚蠢的错误 - 我必须查看我的 appsettings.json 文件...

回答 1 投票 0

部署服务器上的第 3 方 cookie 错误

我正在开发 Blazor 服务器应用程序。我设置了 2 个 cookie,它们在 VS 中运行得很好,但我将它部署到我们的开发服务器上,它开始抛出关于不允许第三方厨师的错误...

回答 1 投票 0

Reqnroll BDD 测试不适用于 Blazor Maui 混合应用程序

我使用 VS 2022 创建了一个新的 Maui Blazor 应用程序。我安装了 Reqnroll 插件,并在解决方案中创建了一个新项目。我添加了对第一个 Maui Blazor 应用程序的项目引用,就像......

回答 1 投票 0

使用 Microsoft Entra ID 身份验证时如何覆盖质询登录路径?

我一直在探索 Entra ID 身份验证(单租户、工作组),并按照在线教程进行操作,并设法让事情按预期工作。所以现在,每当向

回答 1 投票 0

在 Blazor MAUI Hybrid 中捕获所有未处理的异常

我们的问题是我们的生产应用程序崩溃了,但我们不知道为什么。我需要能够捕获这些错误才能发送崩溃分析,但有问题的异常正在潜入所有......

回答 1 投票 0

Quickgrid 在数据库上执行不需要的采石场

我正在使用 blazor Web 应用程序、.net 版本 8 和这些包来使用 Quickgrid 显示超级用户数据转储: 使用 QuickGrid.EntityFrameworkAdapter 时,我使用以下代码: 可查询

回答 1 投票 0

blazor客户端.net core如何从oidc获取服务器api中的用户名?

你好,我有一些 blazor 项目 在客户端: builder.Services.AddOidcAuthentication(opt => { opt.ProviderOptions.Authority = "https://x.y.z/oidc"; opt.ProviderOptions.

回答 1 投票 0

使用 Azure EntraID 身份验证时如何覆盖质询登录路径?

一直在探索 EntraID 身份验证(单租户、工作组),并按照在线教程进行操作并设法使事情按预期工作。所以现在,每当向 ...

回答 1 投票 0

从 UI 更改导航侧菜单项标签后,如何刷新导航侧菜单项标签,而无需在 blazor 中重新加载整个页面

我有一个剃刀页面,在页面右侧显示一个导航菜单,其中包含项目列表。用户可以从 UI 更改这些项目的标签,并且标签名称会在 U 上刷新...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.