Angular Component 的 renderer 创建机制以及 Angular 版本号的确定方式
我的 Angular 应用里,有一个 selector 为 app-root 的 Component:
运行时,基于这个 selector 创建 Component reference:
进而创建 root Component view:
以及 view renderer:
此时app-root节点是空的,没有任何属性生成:
给 app-root 设置 hostAttr:
给 Angular 应用设置版本号,版本号从 VERSION 变量里取出:
通过合适的方法,使用 Angular 构建的应用,可复用在多种不同平台的应用上 —— Web、移动 Web、移动应用、原生应用和桌面原生应用。
为了能够支持跨平台,Angular 通过抽象层封装了不同平台的差异。比如定义了抽象类 Renderer2 、抽象类 RootRenderer 等。此外还定义了以下引用类型:ElementRef、TemplateRef、ViewRef 、ComponentRef 和 ViewContainerRef 等。通过模板变量、@ViewChild 等方法获取DOM元素。
更多Jerry的原创文章,尽在:“汪子熙”:
Angular Component 的 renderer 创建机制以及 Angular 版本号的确定方式相关推荐
- SAP 电商云 Spartacus UI Angular Component 动态创建的单步调试
Jerry 之前的文章SAP 产品 UI 里的容器组件的概念和开发概述介绍过,SAP Spartacus Angular Component,通过我们开发团队自定义的指令 cxComponentWra ...
- 深入解析Angular Component的源码示例
本篇文章主要介绍了剖析Angular Component的源码示例,写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学习下.如有不足之处,欢迎批评指正. Web Component 定 ...
- angular过滤字符_如何使用Angular和Azure计算机视觉创建光学字符读取器
angular过滤字符 介绍 (Introduction) In this article, we will create an optical character recognition (OCR) ...
- 使用 Rxjs 解决 Angular Component 之间的通信问题
本文讨论如果两个 Angular Component 彼此不知道对方的存在,并且也没有共享的父子 Component 时,如何进行通信. 在包括 Angular 在内的许多前端框架中,当我们将应用程序 ...
- 关于 Angular Component ngOnDestroy 钩子函数的调用时机
我开发了一个 Angular Component,实现了 ngOnDestroy 钩子方法之后,没有找到其被调用的方法.查看这个StackOverflow链接后,得知无论是我刷新浏览器,还是从当前页面 ...
- Angular Component代码和编译后生成的JavaScript代码
从 TypeScript 转换为 JavaScript 在这里称为编译. 在这种情况下,compiling 并不意味着创建二进制代码. 对于这种翻译,使用术语 transpilation 而不是 co ...
- Angular Component模板里的元素,运行时如何被生成并插入到DOM tree中
我有一个selector为app-root的Angular Component: 其模板文件里只有一行html代码: 在运行时,这个h1标签是如何插入到整个DOM tree里的呢? 在Angular ...
- SAP Spartacus维护CMS Component到Angular Component的源代码位置
Spartacus界面上的banner,如下图所示,对应着HTML源代码里的cx-banner标签: cx-banner下面是cx-generic-link: 这个cx-generic-link包含一 ...
- SAP Spartacus B2B user列表对应的Angular Component
如下图所示,这个页面点击之后: 显示的Angular UI,在SAP Spartacus里并没有单独的Angular Component来实现: 在userCmsConfig里能发现,SAP Comm ...
最新文章
- Express4.x API (四):Router (译)
- 图灵奖得主Bengio明星创业公司被「贱卖」| AI日报
- 【原创】推荐广告入门:DeepCTR-Torch,基于深度学习的CTR预测算法库
- 使用 QuickBI 搭建酷炫可视化分析
- docker容易内部怎么编辑_在Docker的工作流中常见问题及最终方案
- python函数语法学习
- Easyui datagrid getData简单使用
- linux mint 检测网卡驱动,使用linux mint 安装无线网卡驱动
- 需求分解与需求跟踪矩阵
- 2022前端春招——CVTE笔试编程题
- 0基础使用php五分钟实现数据库增删改查功能
- 安装torch 时,bash install-deps错误
- inurl:faq.php?action=,什么是财富等级 | 帮助 | 酷狗直播 | 就是歌手多
- 7-4 疯狂星期四!!!!!
- 电脑不分盘有没有关系
- 私有vlan(PVLAN)实验配置步骤
- 关于自考 我想说这些
- 英语发音规则---E字母
- Python搭建代理IP池(一)- 获取 IP
- 页面加密代码,附效果演示
热门文章
- hue迁移数据库到mysql
- 2017年5个网络行业快速发展技术趋势
- (深入.Net平台和C#编程)第七章.上机练习.20170412
- 【闲聊产品】之七:投票真的有用么?
- c# 扩展方法奇思妙用高级篇一:改进 Scottgu 的 In 扩展
- Internet 网络协议族
- sqlalchemy(二)高级用法
- ubuntu环境下搭建Ethereum测试私链及JSON-RPC合约交互
- 二、redis系列之持久化
- [转]Laravel与bootstrap-editable实现table的行内编辑