angular - ElementRef 和@ViewChild,不推荐?
问题描述
我是 Angular 的新手,我试图理解:
没有 Elementref,@ViewChild 指令有什么用?
Elementref 直接访问 DOM?还是虚拟 DOM?
为什么 Angular 团队说:“允许直接访问 DOM 会使您的应用程序更容易受到 XSS 攻击。” 这意味着 Vanila JS 由于声称是危险的:JavaScript 访问 DOM?
解决方案
ViewChild
是一个属性装饰器,可帮助您注入对组件或 DOM 引用的引用。
在您的情况下,您担心后者。ElementRef
包装对 DOM 元素的引用。
Angular 提供了用于 DOM 操作的工具 - 例如Renderer
- 具有内置的清理机制,如果您用于ElementRef
修改 DOM,则需要处理自己的清理机制(因为您绕过了 Angular DOM 清理)以避免 XSS 攻击。如果您不修改 DOM,那么您在设计上是安全的。
推荐阅读
- excel - Power Query M 中的到期收益率/内部收益率
- r - geom_signif 没有显示所有的比较
- python-3.x - 如何找到整个 Jupter Notebook 的运行时?
- ios - 在 Apple 开发人员门户上,最近生成的配置文件标记为“无效”
- sql - SQL中的嵌套桶?
- python - 如何将文件密钥传递给在 S3 Put 上触发的 AWS-ECS 容器?
- android - 启动活动时无法识别 AndroidStudio 中的类意图
- javascript - 为什么每次点击回放后我的精灵都会加速一点?
- .net - 尝试使用 AWS CodeBuild 构建 .Net Framework 应用程序
- php - 合并由函数创建的数组