首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >试图从Blazor Server应用程序调用js

试图从Blazor Server应用程序调用js
EN

Stack Overflow用户
提问于 2021-02-09 00:48:54
回答 1查看 2K关注 0票数 1

我试图从一个剃须刀脚本中调用一个非常简单的js函数,但是它总是给我带来同样的错误,我无法简单地理解出了什么问题。

此函数包含在wwwroot/ js /jsScript.js下的js脚本中。

代码语言:javascript
复制
function showAlert(message) { 
    alert(message); 
}

我正试着从MyPage.razor打电话

代码语言:javascript
复制
@{
    <button type="button" class="btn btn-info" @onclick="ShowAlertWindow">Show Alert Window</button>
}

@code {
    protected async Task ShowAlertWindow()
    {
        //IJSRuntime.InvokeAsync<string>("console.log", "ShowAlertWindow");
        await IJSRuntime.InvokeVoidAsync("showAlert", "JS function called from .NET");
    }
}

一旦我运行了我的应用程序,它就会崩溃:

浏览器控制台错误:

文本中的相同错误:

代码语言:javascript
复制
Failed to load resource: the server responded with a status of jsScript.js:1 404 ()



blazor.server.js:19 [2021-02-09T00:29:40.323Z] Error: Microsoft.JSInterop.JSException: Could not find 'showAlert' in 'window'.
Error: Could not find 'showAlert' in 'window'.
    at https://localhost:44379/_framework/blazor.server.js:8:30944
    at Array.forEach (<anonymous>)
    at p (https://localhost:44379/_framework/blazor.server.js:8:30904)
    at https://localhost:44379/_framework/blazor.server.js:8:31614
    at new Promise (<anonymous>)
    at e.beginInvokeJSFromDotNet (https://localhost:44379/_framework/blazor.server.js:8:31587)
    at https://localhost:44379/_framework/blazor.server.js:1:20052
    at Array.forEach (<anonymous>)
    at e.invokeClientMethod (https://localhost:44379/_framework/blazor.server.js:1:20022)
    at e.processIncomingData (https://localhost:44379/_framework/blazor.server.js:1:18006)
   at Microsoft.JSInterop.JSRuntime.InvokeWithDefaultCancellation[T](String identifier, Object[] args)
   at Microsoft.JSInterop.JSRuntimeExtensions.InvokeVoidAsync(IJSRuntime jsRuntime, String identifier, Object[] args)
   at FIS.IO.Pages.Index.ShowAlertWindow() in C:\Users\tfaon\source\repos\FIS.IO\FIS.IO\Pages\Index.razor:line 27
   at Microsoft.AspNetCore.Components.ComponentBase.CallStateHasChangedOnAsyncCompletion(Task task)
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task taskToHandle)

,对于为什么会发生这种情况,有什么想法吗?我一定做错了什么。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-02-09 02:43:09

此错误表示Pages/_Host.cshtml.无法找到javascript函数showAlert,可以在showAlert中添加引用。

代码语言:javascript
复制
<script src="~/js/jsScript.js"></script>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66111454

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档