首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

AngularDart4.0 指南- 显示数据

您可以通过将HTML模板的控件绑定到Angular组件的属性来显示数据。 在这个页面,您将创建一个包含英雄列表的组件。 您将显示英雄名单的列表,并有条件地在列表下方显示一条消息。...这些属性改变Angular会更新显示。 更准确地说,重新显示是在与视图相关的某种异步事件之后发生的,例如按键,计时器完成或对HTTP请求的响应。...组件的英雄列表中有三个以上的项目Angular会将该段落添加到DOM,并显示消息。 如果有三个或更少的项目,Angular会忽略该段落,所以不会显示任何消息。...Angular没有显示和隐藏消息。 它正在添加和删除DOM的段落元素。 这可以提高性能,特别是在大型项目中,有条件地包含或排除大量的HTML与许多数据绑定。 试试看。...概要 现在你知道如何使用: 用双花括号插入来显示组件属性。 ngFor显示项目列表。 Dart类,用于为您的组件生成模型数据显示该模型的属性。 ngIf有条件地显示基于布尔表达式的HTML块。

5.3K10
您找到你想要的搜索结果了吗?
是的
没有找到

AngularDart4.0 指南- 表单 顶

您将在表单添加一个select,并使用ngFor(先前在“显示数据”页面中看到的一种技术)将选项绑定到powers列表。...你知道如何从早期的页面做到这一点。 显示数据教导属性绑定。 用户输入显示如何使用事件绑定监听DOM事件以及如何使用显示的值更新组件属性。 现在您需要同时显示,聆听和提取。...在这个例子控件是有效的或者原始的时候隐藏消息 - “pristine”意味着用户没有改变这个值,因为它是以这种形式显示的。 用户体验是开发者的选择 有些开发人员希望消息始终显示。...有些开发人员希望仅在用户进行无效更改时显示消息控件是“原始的”隐藏消息实现了这个目标。 您向表单添加一个“清除”按钮,您会看到此选项的重要性。...您将看到表格显示的英雄模型值(只读)。 ? 该视图包含一个编辑按钮,其单击事件绑定将清除提交的标志。 您单击编辑按钮,该表消失,并且可编辑的表单重新出现。

17.5K30

AngularDart4.0 指南-体系结构概述 顶

注意是如何在原生HTML元素合适的存放。 自定义组件与原生HTML在相同的布局无缝混合。 元数据 ? 元数据告诉Angular如何处理一个类。...数据绑定对于父组件和子组件之间的通信也很重要。 指令 ? Angular模板是动态的。 Angular呈现它们,它根据指令给出的指示转换DOM。 指令是一个带有@Directive注解的类。...例子包括: 日志服务 数据服务 消息总线 税计算器 应用配置 Angular没有特别指定服务。 Angular没有定义服务。 没有服务基础类,没有地方注册服务。..._heroService); Angular创建一个组件,它首先要求一个注入器来提供组件需要的服务。 注入器维护一个先前创建的服务实例的容器。...如果请求的服务实例不在容器,那么在将服务返回给Angular之前,注入器将创建一个并将其添加到容器所有请求的服务已经解析并返回Angular可以用这些服务作为参数调用组件的构造函数。

7.9K30

AngularDart 4.0 高级-管道 顶

您使用管道Angular会选择更简单,更快速的变更检测算法。  不使用管道 在下一个示例,组件使用默认的积极变化检测策略来监控并更新其hero列表每个英雄的显示。...注意如何添加一个英雄: heroes.add(hero); 您将英雄添加到英雄列表。 对列表的引用没有改变。 这是同一个列表。 这都是Angular关心的。...从它的角度来看,同样的列表没有变化,没有显示更新。 为了解决这个问题,创建一个新的英雄列表并将其分配给heroes。 这次Angular检测到列表引用已经改变。...您可以在实例(查看源代码)确认,您添加英雄,即使您变更heroes列表,飞行英雄也会显示更新。 不纯的AsyncPipe Angular AsyncPipe是一个不纯管道的有趣例子。...Angular每秒钟多次调用这些管道方法,即使是中等大小的列表,用户体验也会严重降级。 filter和orderBy经常被滥用在Angular 1应用程序,导致投诉Angular本身很慢。

6.3K20

AngularDart 4.0 高级-生命周期钩子 顶

OnChanges 看看每次组件输入属性发生变化时,Angular如何用变更对象调用ngOnChanges钩子。 显示如何解释更改对象。...ngOnInit是组件获取其初始数据的好地方。 教程和HTTP章节显示如何。 还要记住,指令的数据绑定输入属性在构建之后才会设置。 如果您需要根据这些属性初始化指令,那么这是一个问题。...日志条目显示为power属性更改的字符串值。 但ngOnChanges并没有捕捉到hero.name的变化,这一开始令人惊讶。 输入属性的值改变Angular只会调用钩子。...英雄或权力没有实质性变化时,它会向日志写入特殊消息,以便您可以看到DoCheck被多次调用。 结果是高亮的: ?...英雄名字超过10个字符,doSomething方法更新屏幕。

6.2K10

AngularDart4.0 指南- 模板语法二 顶

以下示例显示如何使用class绑定来添加和删除应用程序的“special”类。 以下是如何设置没有绑定的属性: <!...指令没有合适的宿主元素如何对元素进行分组。 如何编写自己的结构指令。 为什么你只能应用一个结构指令到一个元素。 本节介绍常见的结构指令: NgIf:有条件地从DOM添加或删除元素。...NgFor NgFor是一个迭代指令 - 一种呈现项目列表的方式。 您可以定义一个HTML块来定义应该如何显示单个项目。 您告诉Angular将该块用作呈现列表每个项目的模板。...例如,重新查询服务器可能会重置所有新的英雄对象的列表。 大多数,如果不是全部,以前显示的英雄。 你知道这一点,因为每个英雄的ID没有改变。 但是Angular只能看到新的对象引用列表。...另一方面,属性路径中空值时不时出现可能还好,特别是数据现在为空,将来将返回数据。 在等待数据的时候,视图应该没有怨言地呈现,而null属性路径应该像title属性一样显示为空白。

29.9K20

Angular 自定义属性指令

TooltipDirective —— Tooltip 指令,用于显示提示消息。...,发现输入非数值,为当前的输入框设置一个红色的边框: this.border = ''; if (/[^\d]+/.test(trimmed)) { this.border = '1px...该指令实现的功能是,当鼠标移入到指定的元素(页面的 ? 元素),显示我们自定义的提示消息。而当鼠标移出指定元素,要隐藏我们自定义的提示消息。...要实现该功能的一种实现方案是,为应用 TooltipDirective 指令的宿主元素动态添加一个子元素,然后让它作为提示消息的容器,当鼠标移入到指定的元素显示前面动态添加的元素。...元素显示提示消息,而鼠标移出 (?) 元素,隐藏提示消息

2K30

AngularDart4.0 指南- 依赖注入 顶

它的唯一目的是显示显示英雄名字列表的HeroListComponent。 HeroListComponent的这个版本从mockHeroes获取它的英雄,这是一个在单独文件定义的内存集合。...Angular销毁这些组件之一的实例,它也会销毁该组件的注入器和注入器的服务实例。 由于注入器继承,您仍然可以将应用程序范围的服务注入到这些组件。...getHeroes()方法在被要求获取英雄记录消息。...provide()函数不能用在Angular注解的提供者列表,因为注释只能包含const表达式。 具有依赖关系的供给类 也许EvenBetterLogger可以在日志消息显示用户名。...旧组件使用OldLogger记录消息,您需要NewLogger的单例实例来替换它。 组件要求输入新的或旧的记录器,依赖注入器应该注入该单例实例。

5.7K20

AngularDart4.0 英雄之旅-教程-06服务 顶

用户可以从列表中选择一个英雄。 不久,您将添加一个仪表板与顶尖的表演英雄,并创建一个单独的视图编辑英雄的细节。 所有三个视图都需要英雄数据。 目前,AppComponent定义了模拟英雄的显示。...注入器不知道如何创建一个HeroService。 如果您现在运行代码,Angular会失败并显示以下错误:  EXCEPTION: No provider for HeroService!...组件实现该方法Angular会在适当的时候调用它。 在“Lifecycle Hooks”页面详细了解生命周期挂钩。...当你点击一个英雄名字,应用程序应该显示英雄名单和英雄详情视图。 异步英雄服务 HeroService立即返回模拟英雄列表; 它的getHeroes()签名是同步的。...您必须更改实现以在完成处理Future结果。 Future成功完成,您将显示英雄。

2.9K10

AngularDart Material Design 输入 顶

如果没有在文本框输入任何内容,则显示默认文本。当用户输入文本,它会消失。...如果输入上有错误消息,则不会显示此文本。 inputAriaLabel String  用于辅助技术的标签。 需要可见标签,请使用标签代替此标签。...如果没有输入文本,则必需的输入将在第一次失去焦点显示验证错误。 requiredErrorMsg String  自定义错误消息,以显示何时需要该字段并显示空白。...loading bool  打开没有可用的建议,请在建议下拉列表显示加载指示符。 maxCount int 字符计数输入框允许的最大字符数。...如果没有输入文本,则必需的输入将在第一次失去焦点显示验证错误。 requiredErrorMsg String  自定义错误消息,以显示何时需要该字段并显示空白。

5.3K40

ROS 2主题-topics-

如何理解主题topic: ROS 2将复杂的系统分解为许多模块化的节点。主题是ROS图(ROS graph)的重要元素,功能为节点交换消息的总线。...主要有: bw:显示所查阅主题的带宽 delay:显示延迟 echo:输出主题消息 find:列出选定主题 hz:输出平均发布频率 info:显示主题消息 list:列出可使用的主题表 pub:发布消息到主题...3.1 命令工具 在新终端运行该命令ros2 topic list将返回系统当前活动的所有主题的列表: ?...更详细的功能:ros2 topic list -t 返回相同的主题列表,这次主题类型显示在每个主题后面的括号: ? 主题具有名称和类型。这些属性(尤其是类型)是节点用于交互相同信息的基础。 ?.../cmd_vel 如果没有消息,该命令不会返回任何数据

1K41

【译】.NET Core 3.0 Preview 3关于ASP.NET Core的更新内容

没有传递给回调函数的值,也使用EventCallback。 Forms&validation 此预览版本添加了用于处理表单和验证的内置组件和基础结构。...EditForm将EditContext设置为一个级联相关的值,该值用于跟踪关于编辑过程的元数据(例如,已修改的内容、当前验证消息等)。...ValidationMessage组件显示特定字段的验证消息。 ValidationSummary组件汇总所有验证消息(类似于验证摘要标记助手)。...在本节,我们将展示如何创建一个新的Angular或React模板,该模板允许我们对用户进行身份验证并访问受保护的API资源。...调用经过身份验证的API 如果我们点击获取数据,我们可以看到天气预报数据列表 ? 保护现有的API 要保护服务器上的API,只需要在要保护的控制器或操作上使用[Authorize]属性。

22.6K10

(译)通过 Git 和 Angular 了解语义化提交信息

约定式提交就是这样一种规范,它在实践简化了 Angular 约定,并简化指出了提交消息规范的要点。...话虽如此,我们的一些人可能不接受这些消息约定,认为它们是可读的或提供信息的,这显然是有意义的。所以如果我们也不需要这些附带的好处,那在项目中执行这样的规范显然是没有意义的。... fix和 core(受影响的包)分别是类型和范围,我们将左分区假设称为“前缀”。另一方面,右分区显然构成了主体(Subject)。...正如您可能会推断的,此提交实际上是 Angular 存储库存在的。 常见类型 除了定义提交消息格式外,Angular 的提交消息约定还指定了一个有用的类型列表,其中包含了各种各样的更改。...让我们看看这些约定是如何简化我们对这些记录的浏览: git log --oneline --grep "^feat\|^fix\|^perf" 我们使用提交消息类型来过滤,因此只显示生产更改(所有以 feat

1.3K20

AngularDart 4.0 高级-路由概述 顶

在任何使用路由器功能的Dart文件,导入路由器库: import 'package:angular_router/angular_router.dart'; 注册提供者和列表指令 如果您已经熟悉Angular...>元素来告诉路由器如何编写导航网址。 有关详细信息,请参阅设置基础href。 配置 浏览器的URL更改时,路由器会查找相应的RouteDefinition,从中可以确定要显示的组件。...路由器插座 当此应用的浏览器URL成为/#/heroes,路由器将该URL与名为Heroes的RouteDefinition匹配,并在放置在宿主视图HTML的RouterOutlet后显示HeroesComponent...危机详情显示列表下方的同一页面上的子视图中。 改变危机的名称。 请注意危机列表的相应名称不会更改。 ?...与英雄细节不同,您键入更新,危机细节更改是暂时的,直到您通过按下“Save”或“Cancel”按钮保存或放弃它们。 这两个按钮都回到危机中心及其危机列表。 不要单击任一按钮。

6.1K20

Angular 显示英雄列表

在本页面,你将扩展《英雄指南》应用,让它显示一个英雄列表, 并允许用户选择一个英雄,查看该英雄的详细信息。 创建模拟(mock)英雄数据 你需要一些英雄数据以供显示。...它会为列表的每项数据复写它的宿主元素。 在这个例子  就是 *ngFor 的宿主元素 heroes 就是来自 HeroesComponent 类的列表。...依次遍历这个列表,hero 会为每个迭代保存当前的英雄对象。 不要忘了 ngFor 前面的星号(*),它是该语法的关键部分。 浏览器刷新之后,英雄列表出现了。...英雄们显示列表,并且所点英雄的详情也显示在了页面的下方。 修复 - 使用 *ngIf 来隐藏空白的细节 该组件应该只有当 selectedHero 存在显示所选英雄的详情。...为什么这样是正常的  selectedHero 为 undefined ,ngIf 从 DOM 移除了英雄详情。因此也就不用担心 selectedHero 的绑定了。

4.4K70
领券