Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我应该直接在组件上使用Angular ngIf吗_Angular - Fatal编程技术网

我应该直接在组件上使用Angular ngIf吗

我应该直接在组件上使用Angular ngIf吗,angular,Angular,我不熟悉棱角分明的东西,而且已经习惯了基本的东西 如果我有一个组件,我想显示或隐藏取决于一个变量 我应该在组件本身上使用*ngIf还是在组件内部使用内容 如果变量photos为true,组件“photos”组件将加载 例2组件的内容 照片组件始终存在,但内容已加载 //满足于此 如果在html元素(如2)上使用*ngIfdirective,则此元素将在DOM中创建。这是不太好的,因为太多的html元素。你的页面会变慢。因此,第一个示例(如1)更好 否则,您可以通过如下方式扩展第二个示例: &l

我不熟悉棱角分明的东西,而且已经习惯了基本的东西

如果我有一个组件,我想显示或隐藏取决于一个变量 我应该在组件本身上使用*ngIf还是在组件内部使用内容

如果变量photos为true,组件“photos”组件将加载

例2组件的内容 照片组件始终存在,但内容已加载

//满足于此

如果在html元素(如2)上使用*ngIfdirective,则此元素将在DOM中创建。这是不太好的,因为太多的html元素。你的页面会变慢。因此,第一个示例(如1)更好

否则,您可以通过如下方式扩展第二个示例:

<ng-container *ngIf="photos">
  <section class="photos-content">
    // content here
  </section>
</ng-container>
将在html文件中生成此注释:

<div>
    <!--template bindings={}-->fooText
<div>

阅读更多有关ng容器的信息。

我认为选项1是最常见的方法,因为创建的dom元素会更少。始终尽可能使其在层次结构中处于较高的位置。我同意第一个选项更好,它更清晰、更常见,但我不同意你的观点。请您详细说明一下“所以这个元素将在DOM中创建”。这是不太好的,因为太多的html元素。你的页面会很慢。”您的意思是第一个示例仅当条件发生时才将元素附加到DOM中,第二个示例首先创建元素,如果条件满足,然后将其从DOM中删除吗?我在文件中没有看到这一点。具体描述在哪里?谢谢。@Emocuc我更新了我的答案。所以我希望这足以理解我的意思。哦,我一定很累了,我以前没有读过你答案中的ng容器。答案现在肯定很清楚了。谢谢
<div>
    <!--template bindings={}-->fooText
<div>