簡體   English   中英

Blazor 無法從其他文件夾中找到引用的組件

[英]Blazor can't find referenced component from other folder

我正在嘗試 Blazor WebAssembly,並希望在 Visual Studio 預生成的示例項目之上創建一些新組件。

所以,基本上我最終得到的是以下文件夾結構:

Project
\ Components
  \ Navigation
    \ BurgerMenu.razor
      BurgerMenu.razor.css
      BurgerMenu.razor.less
\ Shared
  \ MainLayout.razor
    MainLayout.razor.css
    MainLayout.razor.less

到目前為止,一切都很好。 這是我的組件:

MainLayout.razor:

@using Components.Navigation;

@inherits LayoutComponentBase

<div class="sidebar">
    <BurgerMenu />
</div>

<div class="LayoutContainer">
    @Body
</div>

漢堡菜單.razor:

<div>
    Test Component
</div>

@code
{
}

正如你所看到的,到目前為止,真的沒有什么可寫的。

但是,我無法讓它正常工作。 每個版本都會抱怨warning RZ10012: Found markup element with unexpected name 'BurgerMenu'. If this is intended to be a component, add a @using directive for its namespace. warning RZ10012: Found markup element with unexpected name 'BurgerMenu'. If this is intended to be a component, add a @using directive for its namespace.

所以,我現在有點迷路了。 根據官方文檔,@using 語句應該是從文件夾導入組件的正確方法 - 就在那里。 但是,這仍然行不通。

如果我在 /Shared 文件夾中移動 BurgerMenu.razor,一切正常。

那么,我做錯了什么?

我原以為 using 語句需要包含您的項目名稱:

@using Project.Components.Navigation;

如果我嘗試與您類似的事情,編輯器會用紅色強調 using 語句(不帶項目名稱)。

為我重新啟動 Visual Studio 后,此問題已解決。 我正在運行 Professional 2019,顯然智能感知卡住了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM