angular - 如何以角度隐藏特定组件的 div?
问题描述
我是角度的新手。
在我的应用程序组件 html
我有
<div class="A">
<router-outlet ></router-outlet>
</div>
加载的任何组件都将在 div 内。
我可以从中删除登录组件吗?
我试过这个动作如何在角度2中为登录组件使用单独的布局? 它不工作?
解决方案
router-outlet
负责根据当前路由渲染路由器实例化的组件。
如果您希望组件不在此位置呈现并且依赖于匹配的路由,例如您的LoginComponent
,您可以将它从您的路由配置中删除(通常是 at/src/app/app-routing.module.ts
或类似名称)。
虽然这尽可能地回答了您的问题,但考虑到您的详细信息,我建议您仍然希望LoginComponent
在模板中包含 ,具体取决于您的路线。您可以通过以下方式实现此目的
- 将其放置在例如根目录中的某个位置并
app.component.html
结合 anngIf
以确保它仅在特定路由<app-login *ngIf="isInLogin()"></app-login>
上触发:,并订阅 url 更改或检查ts
文件中的位置 url - 创建第二个
router-outlet
。要使多个router-outlet
s 在一个应用程序中工作,您应该使用该name
属性,请参阅文档 - 添加一个
ngIf
到 div 本身,假设您无论如何都希望有一个服务来管理身份验证:<div *ngIf="!authenticationService.isLoggedIn()">
推荐阅读
- typescript - 如何拥有一个显式类型参数和一个推断类型参数?
- c# - 使用 ML 将转换为 ONNX、使用 tensorflow 2.5 导出的 saved_model.pb 加载到 c# 中
- ios - 惰性 var 和 var(let) 块中 self 的区别是什么
- linux - Oracle Linux 上的 Java 性能问题
- sql - SQL 持久化图形,如数据结构
- arrays - 如何强制对映射数组进行新的排序?
- python - 如何在云服务器上使用 --user-data-dir 选项?
- python - 将两个以上的excel文件合并为一个
- c++ - 如何在 ASIO 中关闭异步客户端连接?
- docker - 性能问题 php-fpm 多副本 docker swarm