blazor 相关问题

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

如何获取 tauri blazor 应用程序的可执行文件夹

我正在编写一个基于 ASP.NET Core 8 的 tauri Blazor 应用程序。 我正在尝试获取运行 tauri Blazor exe 的文件夹。 我尝试使用以下方法检查文件夹: @代码 { 私有字符串 patchFolder = Path.C...

回答 1 投票 0

如何使用 .NET MAUI Blazor Hybrid 显示 Google 地图导航

我目前正在实施一个物流应用程序,并在那里集成了谷歌地图。现在我需要在应用程序中显示 Google 地图导航。 我添加了一个名为 Navigation.razor 的新页面并使用...

回答 1 投票 0

为什么使用NavigationManager导航到同一页面时会触发OnInitialized

这是在具有每页交互性的 Blazor 服务器应用程序中。 在我的搜索页面中,我想在参数更改时更新页面网址,以便可以复制链接。我的理解是通过使用...

回答 1 投票 0


如何在 Blazor/razor 文件中添加 SVG <text>

我有一个生成 SVG 图像的 Blazor 应用程序(.Net 3.1 Core)。它像任何其他 HTML 一样使用 razor/Blazor 语法生成。问题出在生成 SVG 元素时。我已经尝试过...

回答 2 投票 0

Blazor 8 计时器表更新无需单击按钮

我有一个带有 InteractiveServerMode 的 Blazor 8。我有一个表显示服务器要完成的作业。这些作业可能每 20 秒添加一次(或者其他程序检查是否添加了任何新作业...

回答 1 投票 0

过多重定向到 MicrosoftIdentity/Account/AccessDenied

我有一个使用 AAD 登录的 blazor 服务器应用程序。我想仅限制特定用户的访问权限(基于用户角色)。 程序.cs 建造者服务 .AddAuthentication(OpenIdConnectDefaults.

回答 1 投票 0

.NET 8 和 Blazor 组件可空警告 @ref

据我了解,隐藏服务空警告的推荐方法如下: [注入] private IExampleServiceExampleService { get;放; } = 默认!; https://learn.microsoft...

回答 1 投票 0

DotNet 8 和 Blazor 组件可空警告 @ref

据我了解,隐藏服务空警告的推荐方法如下: [注入] private IExampleServiceExampleService { get;放; } = 默认!; https://learn.microsoft...

回答 1 投票 0

当我在 _Layout.cshtml 文件中与 JavaScript 一起使用 <script src="_framework/blazor.server.js"></script> 时,我遇到了问题

我在 .NET 8 中使用 Blazor Server 时遇到问题。当我尝试加载脚本时,我的 JavaScript 脚本停止正常工作 <p>我在使用 .NET 8 中的 <strong>Blazor Server 时遇到一个问题。当我尝试加载 _Layout.cshtml 文件中的脚本 </strong><code> &lt;script src=&#34;_framework/blazor.server.js&#34;&gt;&lt;/script&gt;</code><pre> 时,我的 JavaScript 脚本停止正常工作。 当我包含此脚本时,我自己的 JavaScript 脚本停止工作(它们实际上工作了不到一秒钟,然后屏幕闪烁并且脚本停止工作)。但是,当我删除 _Layout.cshtml 中对 .js 文件的引用并将它们直接放置在 page1.razor 等文件中时,一切正常。</pre> </p>文件<p>_Layout.cshtml<strong>:</strong> </p><code>&lt;base href=&#34;~/&#34; /&gt; &lt;component type=&#34;typeof(HeadOutlet)&#34; render-mode=&#34;ServerPrerendered&#34; /&gt; &lt;/head&gt; &lt;body&gt; @RenderBody() &lt;script src=&#34;js/test/custom.js&#34;&gt;&lt;/script&gt; &lt;script src=&#34;js/test/swiper.js&#34;&gt;&lt;/script&gt; &lt;script src=&#34;js/test/gallery.js&#34;&gt;&lt;/script&gt; &lt;script src=&#34;js/test/Pager.js&#34;&gt;&lt;/script&gt; &lt;script src=&#34;js/test/picture.js&#34;&gt;&lt;/script&gt; &lt;script src=&#34;js/main.js&#34;&gt;&lt;/script&gt; &lt;script src=&#34;_framework/blazor.server.js&#34;&gt;&lt;/script&gt; </code><pre> </pre>我希望所有对 JavaScript 文件的引用都包含在 _Layout.cshtml 文件中,以便它们是全局的并且可以在整个页面上正常工作。我的 JavaScript 脚本旨在触发交互,例如 .<p> </p>我已经搜索过与类似问题相关的线程,包括 StackOverflow 上的一个:<p>Why can't I load any js after my blazor.server.js?<a href="https://stackoverflow.com/questions/62379202/why-cant-i-load-any-js-after-my-blazor-server-js">,但我找不到问题的解决方案。</a> </p>有人遇到过类似的问题可以帮助我吗?也许有人知道在 _Layout.cshtml 中正确加载 blazor.server.js 的解决方案,以便我的 JavaScript 脚本在整个页面上正常工作?”<p> </p> </question> <answer tick="false" vote="0">问题是因为 Blazor Server 在初始化时替换了 DOM 内容。因此,要修复它,您需要:<p> </p> <ol>首先加载 blazor.server.js <li> </li>等待“blazor:start”事件<li> </li>加载 Blazor 后以编程方式加载脚本<li> </li> </ol>像这样:<p> </p><code>&lt;!-- _Layout.cshtml --&gt; &lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;base href=&#34;~/&#34; /&gt; &lt;component type=&#34;typeof(HeadOutlet)&#34; render-mode=&#34;ServerPrerendered&#34; /&gt; &lt;/head&gt; &lt;body&gt; @RenderBody() &lt;!-- Load Blazor first --&gt; &lt;script src=&#34;_framework/blazor.server.js&#34;&gt;&lt;/script&gt; &lt;!-- Wait for Blazor, then load your scripts --&gt; &lt;script&gt; window.addEventListener(&#39;blazor:start&#39;, function() { loadScripts([ &#39;js/test/custom.js&#39;, &#39;js/test/swiper.js&#39;, &#39;js/test/gallery.js&#39;, &#39;js/test/Pager.js&#39;, &#39;js/test/picture.js&#39;, &#39;js/main.js&#39; ]); }); function loadScripts(srcs) { srcs.forEach(src =&gt; { const script = document.createElement(&#39;script&#39;); script.src = src; document.body.appendChild(script); }); } &lt;/script&gt; &lt;/body&gt; &lt;/html&gt; </code><pre> </pre>如果您需要修改现有脚本,请将它们包含在以下内容中:<p> </p><code>if (typeof window !== &#39;undefined&#39;) { // your initialization code here } </code><pre> </pre>如果脚本顺序很关键(例如,后面的脚本依赖于前面的脚本),您可能需要更顺序的加载方法。<p> </p> </answer></body>

回答 0 投票 0

我们可以在常规非 Blazor HTML 页面中将 Blazor 组件用作 Web 组件吗?

我们能否将 Blazor 组件渲染为独立的 DOM 片段,或者以其他方式将其用作普通 HTML/JS 页面中的标准 Web 组件? 这可能是 Blazor 提出的一个天真的问题

回答 3 投票 0

欢迎文本 blazor 应用程序不断收到错误“错误。处理您的请求时发生错误。”我无法通过这个错误页面

Welcome 文本应用程序的目的是生成一个指向 WelcomeText 站点的 Web 链接并将该链接发送给新客户。在网站上,客户应该会受到欢迎信息的欢迎,但是

回答 1 投票 0

是否可以在 Blazor 的 DOM 事件中混合 Javascript 和 C# 代码?

我正在尝试在 Blazor WebAssembly 中实现下一个目标;我需要能够侦听组件中的事件,并使用 Javscript 和 C# 代码,如下所示: 我正在尝试在 Blazor WebAssembly 中实现下一个目标;我需要能够侦听组件中的事件,并使用 Javscript 和 C# 代码,如下所示: <button onclick="console.log('Showing event from Js: ' + event); @Test()">Test</button> @code { public void Test() { JSRuntime.InvokeVoidAsync("console.log", "Showing log from C#"); } } 第一个问题是我收到错误“无法将类型 void 隐式转换为对象”,因此如果我更改 Test 方法签名只是为了返回一个对象 public object Test() { JSRuntime.InvokeVoidAsync("console.log", "Showing log from C#"); return null; } 应用程序编译,但一旦页面加载,“Test()”函数就会自动执行,如果我单击按钮,它只会执行 Javascript 代码,而不是两段代码。 我知道我应该在 Blazor 中处理事件,在事件名称前添加“@”符号,以便调用 C# 方法,并使用互操作执行 Javascript 代码,但这样,我就无法使用默认的 Javascript“事件”我需要使用它,而不是 Blazor“事件”版本。 提前致谢! 只能有1个onclick属性,所以要么从JS调用C##方法,要么从C#调用JS代码。在这两种情况下,您都需要互操作,但不支持以您尝试的方式组合它。 “Test()”函数自动执行 是的,在onclick="... @Test()"中,它是在页面呈现时执行的,而不是在单击按钮时执行的。 您可以通过像往常一样将 C# 放置为内联属性,但将 javascript 添加为事件侦听器,让 JS 和 C# 触发同一个 DOM 事件。 例如在 App.razor 或 _Host.cshtml <body> 的底部 <script src="_framework/blazor.web.js"></script> <script> document.addEventListener("click", function(e){ if (e.target.id !== "testButton")return console.log("You clicked ", e.target.innerText) }) 您可能需要查找“如何将事件侦听器添加到动态生成的元素。” 内联,具有不同程度的黑客性,有时您可以使用“备用”javascript事件,其中几个事件几乎同时在同一元素上触发: <input @onchanged="Test" onblur="javascript:…" /> <input @oninput="Test" onkeyup="javascript:…" /> <select @onchanged="Test" oninput="javascript:…">...</select> <select @bind="Test" oninput="javascript:…">...</select> <button @onclick="Test" onmouseup="javascript:…">...</button>

回答 2 投票 0

Blazor 中的 SkiaSharp 用于桌面应用程序,无需 WASM(Blazor 混合?)

我想在 Blazor 桌面应用程序(Windows、Mac、Linux 等)中使用 SkiaSharp 我了解 Blazor Hybrid ( Blazor Desktop ),但我没有找到任何集成 SkiaSharp 的方法。 所以基本上我想要的...

回答 1 投票 0

如何根据 FluentDataGrid 的值设置各个单元格的样式?

我有一个 Blazor Fluent-UI FluentDataGrid,我想实现热图效果。尝试避免编写任何 JavaScript - 有什么方法可以将样式应用于单个单元格以实现......

回答 1 投票 0

InputText:无法为InputText实现CSS

InputText 存在一个问题,即它无法从 razor.css 文件实现 CSS。如果直接实现样式,这是可行的,但如果我放置它则不起作用...

回答 1 投票 0

登录后如何访问blazor服务器中的JWT?

我正在从 Blazor 服务器项目调用 API 进行身份验证。 API 使用 JWT 进行响应。 我可以在登录后将其保存在 ProtectedLocalStorage 中,如下所示 等待 protectedLocalStorage.SetAs...

回答 1 投票 0

Blazor InputText 无法为 InputText 实现 CSS

InputText 有 1 个问题,即它无法实现 razor.css 文件中的 css。如果直接实现样式,这是有效的,但如果我放置它则不起作用......

回答 1 投票 0

FluentUI:捕获键码 [Ctrl] + 鼠标单击

我在版本 4.10.3 中使用 FluentUI for Blazor WASM。 我想检查用鼠标单击某个元素时是否按下了 [Ctrl] 键。 我注册了 builder.Services.AddFluentUIComponents(...

回答 1 投票 0

从 Blazor 服务器应用程序访问手机照片库

有一个网站(Blazor 服务器)。客户通过手机访问它,拍摄事故的照片和视频。 他可以将照片、视频发送到服务器并记录在数据库中吗...

回答 2 投票 0

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