Blazor是一个Web框架,允许开发人员在.NET中编写客户端代码。它是ASP.NET Core的一部分,称为“Razor Components”。
我正在编写一个基于 ASP.NET Core 8 的 tauri Blazor 应用程序。 我正在尝试获取运行 tauri Blazor exe 的文件夹。 我尝试使用以下方法检查文件夹: @代码 { 私有字符串 patchFolder = Path.C...
如何使用 .NET MAUI Blazor Hybrid 显示 Google 地图导航
我目前正在实施一个物流应用程序,并在那里集成了谷歌地图。现在我需要在应用程序中显示 Google 地图导航。 我添加了一个名为 Navigation.razor 的新页面并使用...
为什么使用NavigationManager导航到同一页面时会触发OnInitialized
这是在具有每页交互性的 Blazor 服务器应用程序中。 在我的搜索页面中,我想在参数更改时更新页面网址,以便可以复制链接。我的理解是通过使用...
如何在 Blazor/razor 文件中添加 SVG <text>
我有一个生成 SVG 图像的 Blazor 应用程序(.Net 3.1 Core)。它像任何其他 HTML 一样使用 razor/Blazor 语法生成。问题出在生成 SVG 元素时。我已经尝试过...
我有一个带有 InteractiveServerMode 的 Blazor 8。我有一个表显示服务器要完成的作业。这些作业可能每 20 秒添加一次(或者其他程序检查是否添加了任何新作业...
过多重定向到 MicrosoftIdentity/Account/AccessDenied
我有一个使用 AAD 登录的 blazor 服务器应用程序。我想仅限制特定用户的访问权限(基于用户角色)。 程序.cs 建造者服务 .AddAuthentication(OpenIdConnectDefaults.
据我了解,隐藏服务空警告的推荐方法如下: [注入] private IExampleServiceExampleService { get;放; } = 默认!; https://learn.microsoft...
据我了解,隐藏服务空警告的推荐方法如下: [注入] private IExampleServiceExampleService { get;放; } = 默认!; https://learn.microsoft...
当我在 _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> <script src="_framework/blazor.server.js"></script></code><pre> 时,我的 JavaScript 脚本停止正常工作。 当我包含此脚本时,我自己的 JavaScript 脚本停止工作(它们实际上工作了不到一秒钟,然后屏幕闪烁并且脚本停止工作)。但是,当我删除 _Layout.cshtml 中对 .js 文件的引用并将它们直接放置在 page1.razor 等文件中时,一切正常。</pre> </p>文件<p>_Layout.cshtml<strong>:</strong> </p><code><base href="~/" /> <component type="typeof(HeadOutlet)" render-mode="ServerPrerendered" /> </head> <body> @RenderBody() <script src="js/test/custom.js"></script> <script src="js/test/swiper.js"></script> <script src="js/test/gallery.js"></script> <script src="js/test/Pager.js"></script> <script src="js/test/picture.js"></script> <script src="js/main.js"></script> <script src="_framework/blazor.server.js"></script> </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><!-- _Layout.cshtml --> <!DOCTYPE html> <html> <head> <base href="~/" /> <component type="typeof(HeadOutlet)" render-mode="ServerPrerendered" /> </head> <body> @RenderBody() <!-- Load Blazor first --> <script src="_framework/blazor.server.js"></script> <!-- Wait for Blazor, then load your scripts --> <script> window.addEventListener('blazor:start', function() { loadScripts([ 'js/test/custom.js', 'js/test/swiper.js', 'js/test/gallery.js', 'js/test/Pager.js', 'js/test/picture.js', 'js/main.js' ]); }); function loadScripts(srcs) { srcs.forEach(src => { const script = document.createElement('script'); script.src = src; document.body.appendChild(script); }); } </script> </body> </html> </code><pre> </pre>如果您需要修改现有脚本,请将它们包含在以下内容中:<p> </p><code>if (typeof window !== 'undefined') { // your initialization code here } </code><pre> </pre>如果脚本顺序很关键(例如,后面的脚本依赖于前面的脚本),您可能需要更顺序的加载方法。<p> </p> </answer></body>
我们可以在常规非 Blazor HTML 页面中将 Blazor 组件用作 Web 组件吗?
我们能否将 Blazor 组件渲染为独立的 DOM 片段,或者以其他方式将其用作普通 HTML/JS 页面中的标准 Web 组件? 这可能是 Blazor 提出的一个天真的问题
欢迎文本 blazor 应用程序不断收到错误“错误。处理您的请求时发生错误。”我无法通过这个错误页面
Welcome 文本应用程序的目的是生成一个指向 WelcomeText 站点的 Web 链接并将该链接发送给新客户。在网站上,客户应该会受到欢迎信息的欢迎,但是
是否可以在 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>
Blazor 中的 SkiaSharp 用于桌面应用程序,无需 WASM(Blazor 混合?)
我想在 Blazor 桌面应用程序(Windows、Mac、Linux 等)中使用 SkiaSharp 我了解 Blazor Hybrid ( Blazor Desktop ),但我没有找到任何集成 SkiaSharp 的方法。 所以基本上我想要的...
如何根据 FluentDataGrid 的值设置各个单元格的样式?
我有一个 Blazor Fluent-UI FluentDataGrid,我想实现热图效果。尝试避免编写任何 JavaScript - 有什么方法可以将样式应用于单个单元格以实现......
InputText 存在一个问题,即它无法从 razor.css 文件实现 CSS。如果直接实现样式,这是可行的,但如果我放置它则不起作用...
我正在从 Blazor 服务器项目调用 API 进行身份验证。 API 使用 JWT 进行响应。 我可以在登录后将其保存在 ProtectedLocalStorage 中,如下所示 等待 protectedLocalStorage.SetAs...
Blazor InputText 无法为 InputText 实现 CSS
InputText 有 1 个问题,即它无法实现 razor.css 文件中的 css。如果直接实现样式,这是有效的,但如果我放置它则不起作用......
我在版本 4.10.3 中使用 FluentUI for Blazor WASM。 我想检查用鼠标单击某个元素时是否按下了 [Ctrl] 键。 我注册了 builder.Services.AddFluentUIComponents(...
有一个网站(Blazor 服务器)。客户通过手机访问它,拍摄事故的照片和视频。 他可以将照片、视频发送到服务器并记录在数据库中吗...