我知道当*ngIf
指令设置为false时,DOM中不会包含某个元素或组件。假设我有一个显示管理工具的组件,只有授权用户(管理员)才能访问它。将ngIf指令设置为false是否会阻止组成此组件的javascript被发送到未经授权的用户的浏览器?我问这个是因为我不希望任何未经授权的人以某种方式看到我的管理页面(可能通过反编译)。所有人都可以使用吗?如果是这样,从javascript文件中提取管理组件有多难?
谢谢你,
答案 0 :(得分:1)
您应该将管理页面放在NgModule
中,并将其放在Route
配置中的延迟加载路径中。这样它就会成为自己的模块和包文件,只有在有人导航到该页面时才会加载。您应该添加路由保护(CanLoad
)以防止未经授权的访问。
如果您真的想全力以赴,还应该阻止将该软件包文件加载到未登录或者没有直接从您的服务器访问管理员权限的人