我已经将一个库转换为.NET Standard 2.0,成为Razor组件库:
我将SDK类型更改为Razor:
<Project Sdk="Microsoft.NET.Sdk.Razor">
并添加了对Razor组件库的引用
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Components" Version="3.1.8" />
<PackageReference Include="Microsoft.AspNetCore.Components.Web" Version="3.1.8" />
</ItemGroup>
然而,当编辑组件时,我发现编译过程失败了。例如,它无法正确映射HTML标记中的@bind=..
属性,Razor组件似乎无法正确编译。
这是由于缺少_Imports.razor
文件引起的,如果直接创建Razor组件库,通常会创建该文件。这将正确的组件库引入Razor编译的范围。在库的根目录中创建此。
内容应至少包含以下行:
@using Microsoft.AspNetCore.Components.Web
如果您愿意,也可以将其他名称空间引入作用域。