WebAssembly或wasm是一种新的可移植,大小和加载时间有效的格式,适合于编译到Web。
我刚刚看到 Blazor WASM 目前不支持多线程。因此,如果您执行 Task.Run(),它实际上会在主线程上运行并阻塞 UI。 因此,如果我想要 Blazor WASM 应用程序...
在使用 clang 工具链构建 WASM 模块时,我遇到了一个我很难理解的行为。基本上,我有一个非常简单的 C++ 代码(在 test.cc 中): extern "C" int fo...
我正在尝试使用 Nuitka 将 Python 代码编译为 C,然后使用 emcc 将生成的 C 代码编译为 WASM。我已经使用
Blazor WebAssembly 部署到 Github 页面不支持自定义域
我正在尝试使用 Blazor WebAssembly 并将页面部署到 github 页面。一切工作正常,但一旦我切换到自定义域(dns 已完成并工作),页面就会向我显示 blazor“An
Blazor WebAssembly 部署到 Github 页面不起作用
将简单的 Blazor WebAssembly .NET8.0(登陆站点)部署到 Github 页面不起作用。示例项目可以在这里找到:https://github.com/vcarlucci/Hiptoken 部署(gitup 操作)...
如何使用 es6 import 加载 emscripten 生成的模块?
我正在尝试导入使用 emscripten 生成的模块作为 es6 模块。 我正在尝试使用 emscripten 文档中的基本示例。 这是我用来从 C 生成 js 模块的命令
是否可以在 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()"中,它是在页面呈现时执行的,而不是在单击按钮时执行的。 您可以通过 3 种不同的方式为一个 DOM 事件同时触发 C# 和 javascript 处理程序。 1。依赖事件冒泡 将按钮包裹在 div 或 span 中。将 javascript onclick 放在包含的 div 或 span 上,并将 C# onclick 放在按钮上。 <div onclick="console.log('Showing event from Js: ' + event)> <button @onclick="Test">Test</button> </div> 除了鼠标事件和大多数按键事件之外,DOM 还会冒泡选择、更改和其他一些事件 2。使用事件监听器 您可以通过像往常一样将 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) }) 您可能需要查找“如何将事件侦听器添加到动态生成的元素。” 3.使用“足够好”的备用活动 内联,具有不同程度的正确性,有时您可以使用“备用”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>
我正在尝试编译 cpp,但出现如下错误: 警告:未定义符号:_ZN2cv3MatC1EiiiPvm(由顶级编译的 C/C++ 代码引用) 警告:未定义符号:_ZN2cv3MatD1...
将protobuf c++程序编译为wasm(WebAssembly)
我想将一个c++程序编译为wasm(webassemble)并通过wasmtime(wasm运行时)运行它,但失败了。 C++ 程序使用 protobuf,它已经使用 Emscri 从 src 代码编译而来...
如何在我的 wasm 模块中使用 api(Kotlin 多平台)
我有以下问题: 我需要在项目中使用 REST API,但无法在 WebAssembly (WASM) 模块中执行此操作。我一直在尝试使用以下代码: 暂停有趣的 fetchApiData(url:
背景:我是Vite新手,最近我正在尝试构建一个Markdown渲染项目,该项目从外部接收Markdown格式字符串并渲染GFM HTML。我选择 md4w 作为转换器并且...
在 Rust 代码中利用复制的 Trunk Web 应用程序资产
我正在使用 trunk 开发一个简单的 Web 应用程序,我想在其中复制几个 JSON 文件资源以便在一些 Rust 代码中运行时使用。我看到这个例子,他们使用 copy-dir 来链接资产,但是...
使用 emscripten 编译为 WASM 时在 C++ 中使用 protofub。从文档编译示例时出错
我需要帮助解决问题 我正在将 javascript 库的一部分重写为 wasm。 我使用以下命令将 C++ 代码编译为 wasm: emcc idw.cpp -Oz -s WASM=1 -s --no-entry -o idw.wasm (...
是否可以在 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 的 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()"中,它是在页面呈现时执行的,而不是在单击按钮时执行的。 是的,您可以添加 javascript 事件侦听器,以便 JS 和 C# 都可以运行。 例如在 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("I caught ", arguments," in javascript!") }) 您可能需要查找“如何将事件侦听器添加到动态生成的元素。” 内联,具有不同程度的黑客性,有时您可以使用“备用”javascript事件,其中几个事件几乎同时在同一元素上触发: <input @onchanged="Test" onblur="javascript:…" /> <select @onchanged="Test" oninput="javascript:…">...</select> <select @bind="Test" oninput="javascript:…">...</select> <button @onclick="Test" onmouseup="javascript:…">...</button>
我使用 Go 创建了一个测试 WASM 程序。在程序的 main 中,它向“全局”添加了一个 API,并在通道上等待以避免退出。它类似于典型的 hello-world Go WAS...
是否可以使用emscripten为WebAssembly编译x264?
我正在尝试为 WebAssembly 构建 x264 代码。 我使用emconfigure来配置。像下面这样 emconfigure ./configure --prefix="$(pwd)/em" --enable-shared --enable-static --disable-cli --d...
浏览器不使用 Flutter Web 应用程序的 Web 程序集
我正在构建一个 flutter web 应用程序(使用 flutter 3.22 和 Flame Engine)。我正在使用 --wasm 标志构建应用程序。 但 Chrome 和 Edge 都没有使用 wasm 模块,而是回退到 js....
如何从 Go 客户端调用自定义 Wasm 主机函数? 我看过一些示例,显示加载独立的 witx/wat/wasm 定义的函数,但还没有找到 perfor 的示例...
关于 Blazor 自动渲染模式:下载 WASM 后我们可以立即删除 websocket 吗?
目前,如果我们对组件使用自动渲染模式,并且之前尚未在浏览器中下载 WASM,则在 WASM 下载完成后,SignalR 连接将保持打开状态...