【问题标题】:Embedding Blazor into a Jekyll blog. the uri is not contained by the base URI将 Blazor 嵌入到 Jekyll 博客中。 URI 不包含在基本 URI 中
【发布时间】:2020-05-02 09:12:42
【问题描述】:

我正在使用 jekyll 将我的 blazor 应用程序嵌入到我的 github 页面站点中。我的 Blazor 应用程序不使用导航。但是,我收到此错误:

System.ArgumentException: The URI 'http://localhost:4000/blog/2020/05/01/XamlTemplates' is not contained by the base URI 'http://localhost:4000/blazor/XamlTemplates/'.

这是我在 _includes 文件夹中的 page_blazor.html,用于嵌入到网站的各个页面中

<script src="js/index.js"></script>
<app>Loading...</app>

<script src="_framework/blazor.webassembly.js"></script>

如果 index.html 文件与“_framework”文件夹位于同一文件夹中,则此方法有效。 这就是我在博客中使用它的方式:

---
title: Xaml Templates
date: 2020-05-01
layout: post
name: Razor for Xaml
baseUrl: /blazor/XamlTemplates/
---

{% include page_blazor.html %}

此博客文章的 url 与 blazor 使用的 baseUrl 不同。这就是导致异常的原因。有谁知道是否有办法解决这个问题?为什么我们必须指定基本 URL?有没有办法关闭 blazor 导航。我要避免的是必须将 dll 复制并粘贴到我想在我的站点中使用它们的任何地方。

【问题讨论】:

    标签: jekyll github-pages blazor


    【解决方案1】:

    基本 url 用于导航和物理文件依赖项。

    即使您不使用导航,如果您在站点层次结构中向下加载一个页面,您的应用程序仍然需要能够返回到应用程序根目录以获取您的 wasm dll。幸运的是,这很容易通过将&lt;base href="/blazor"&gt; 添加到您的页面来完成。

    微软为此提供了excellent documentation

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-12-25
      • 2012-05-18
      • 1970-01-01
      • 2013-04-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-16
      相关资源
      最近更新 更多