我正在尝试在 Blazor 视图中显示图像,但它不起作用并且仅显示图像图标:
<img src="~/Images/watch.jpg" asp-append-version="true" width="300px" />
我的图像位于此路径中wwwroot/Images/watch.jpg
我正在尝试在 Blazor 视图中显示图像,但它不起作用并且仅显示图像图标:
<img src="~/Images/watch.jpg" asp-append-version="true" width="300px" />
我的图像位于此路径中wwwroot/Images/watch.jpg
您可能遇到了这个错误:https ://github.com/aspnet/Blazor/issues/1216并且需要删除 ~ 以使其工作,或者等待 0.6 版本。
尝试这个:
<img src="/Images/watch.jpg" asp-append-version="true" width="300px" />
试试这个
<img src="Images/watch.jpg" width="300px" />
只需删除 ~/ 它就可以了。
在wwwroot下创建一个文件夹 images然后像src="images/MyLogo.png"一样访问它
在 Blazor 中,您似乎不需要相对路径,甚至不需要 wwwroot 部分。如果您的图像位于 wwwroot/images 中,则以下内容将起作用,(其中 class 是设置图像高度的 css)
img class="my_logo-img" src="/images/myLogoImage.png"
Mine works when adding this: <base href="~/" />
on your razor. This is already been placed to _Host.cshtml but you need to repeat adding it individually on your component pages.
我发现 blazor '../Images' 中的所有内容都是您需要的。
如果您在 Blazor 中对图像/css 进行任何操作,您可能会喜欢 Chanan 名为 BlazorStyled 的这个项目:
https://github.com/chanan/BlazorStyled
我最近使用它构建了一个名为 Blazor Image Gallery 的示例项目和教程,它也使用了我的 Nuget 包 DataJuggler.Blazor.FileUpload。
这是称为 ImageButton 的组件之一:
@using BlazorStyled
<Styled @bind-Classname="@ImageStyle">
background-image: url('@ImageUrl');
width: @WidthPixels;
height: @HeightPixels;
transform: scale(@Scale);
transform-origin: left;
border: 2px solid black;
z-index: @ZIndex;
outline: none;
position: absolute;
left: @ColumnLeftPixels;
top: @RowTopPixels;
display: inline-block;
</Styled>
<button class="@ImageStyle" @onclick="Button_Clicked"></button>
用户上传文件后,我的 ImageUrl 属性来自我的 SQL 图像表:
ImageUrl = '../Images/Gallery/Christina/Image1.08b2bb51-5.png'
然后在使用中,我为所选艺术家迭代我的图像列表并在每个按钮上设置图像。
<div class="galleryimages">
@if (SelectedArtist.HasImages)
{
@foreach (Image image in SelectedArtist.Images)
{
<ImageButton Image=image Parent=this></ImageButton>
}
}
</div>
完整的源代码和视频:
您需要使用点而不是猪尾巴,所以它会是这样的:
假设您将 images 文件夹与 css 文件夹放在同一级别,否则您将必须插入正确的路线。
在此处阅读此输入链接说明,您将了解如何解决您的问题。基本上,您必须告诉框架使用根目录,因为默认情况下它会在错误的位置搜索文件 - http:///images/。