1

我正在尝试让 Blazor(服务器端)与 IE11 一起使用(它与 Chrome 一起使用)。但是 IE 11 似乎没有响应 onclick="@ExportExcel"。我已经从https://github.com/Daddoon/Blazor.Polyfill添加了 blazor.polyfill.min.js但它没有帮助。提前致谢!

前端代码如下。

@inject ExcelExportService EES

<div>
    <button onclick="@GetTransferFile">Transfer Excel file</button>
</div>

@functions {

    protected async Task GetTransferFile()
    {
        await EES.TransferFile();
    }
}

在 _Host.cshtlm 中编辑 ,我按照 Issac 的建议添加了 polyfill.min.js

<body>

    <script crossorigin="anonymous" src="https://polyfill.io/v3/polyfill.min.js"></script>
    <script type="text/javascript" src="blazor.polyfill.min.js"></script>
    <app>
        @(await Html.RenderComponentAsync<App>())
    </app>


    <script src="_framework/blazor.server.js"></script>
</body>

我现在在控制台日志中看到一条错误消息“CSS3111:@font-face 遇到未知错误。” 我注释掉引导程序只是为了测试,我仍然得到错误。我猜是 onclick 中 GetTransferFile 之前的 @ 引起了混淆。

4

1 回答 1

3

尝试添加这个 polyfill:https ://polyfill.io/v2/docs/

您应该记住,即使在服务器端执行模式下,Blazor 也会使用一些旧浏览器不支持的新 JavaScript 构造,例如 Promise、Fetch API 等。

希望这可以帮助...

于 2019-06-03T11:47:14.783 回答