站長資訊網
        最全最豐富的資訊網站

        淺析Angular中的模板引用變量

        本篇文章繼續學習Angular,帶大家了解一下Angular中的模板引用變量,希望對大家有所幫助!

        淺析Angular中的模板引用變量

        <input type="text" [value]="value" #name>

        1. 模板引用變量可以是Angualr模板中的DOM元素、Angular組件(指令),元素,TemplateRef,甚至Web組件的引用,而它具體是什么,則取決于它所依附的元素(不使用指令進行干預時)。如前文示例代碼中的模板引用變量name就是<input>這一DOM元素的引用。【相關教程推薦:《angular教程》】

        <app-component #component [input]="variable"></app-component> {{ component.input }} {{ component.func() }}

        通過模板引用變量我們獲得了app-component組件的實例引用,這使得我們可以輕松地在模板中訪問app-component組件內部的成員。
        2. Angular 根據你所聲明的變量的位置給模板變量賦值:

        • 如果在組件上聲明變量,該變量就會引用該組件實例。

        • 如果在標準的 HTML 標記上聲明變量,該變量就會引用該元素。

        • 如果你在 <ng-template> 元素上聲明變量,該變量就會引用一個 TemplateRef 實例來代表此模板。

        • 如果該變量在右側指定了一個名字,比如 #var="ngModel" ,那么該變量就會引用所在元素上具有這個 exportAs 名字的指令或組件。

        3. 將 NgForm 與模板變量一起使用
        這里的 NgForm 指令演示了如何通過引用指令的的 exportAs 名字來引用不同的值。在下面的例子中,模板變量 itemForm 在 HTML 中分別出現了三次。

        <form #itemForm="ngForm" (ngSubmit)="onSubmit(itemForm)">   <label for="name">Name</label>   <input type="text" id="name" class="form-control" name="name" ngModel required />   <button type="submit">Submit</button> </form>   <div [hidden]="!itemForm.form.valid">   <p>{{ submitMessage }}</p> </div>

        * 如果沒有 ngForm 這個屬性值,itemForm 引用的值將是 <form> 元素。而 Com 和 Directive 之間的差異在于 Angular 在沒有指定屬性值的情況下,Angular 會引用 Component,而 Directive 不會改變這種隱式引用(即它的宿主元素)。(還沒讀懂什么意思.......

        而使用了 NgForm 之后,itemForm 就是對 NgForm 指令的引用,可以用它來跟蹤表單中每一個控件的值和有效性。

        與原生的 <form> 元素不同, NgForm 指令有一個 form 屬性。如果 itemForm.form.valid 無效,那么 NgFormform 屬性就會讓你禁用提交按鈕。

        . 其實在使用angular寫列表頁時,就會經常用到模板引用變量:

        淺析Angular中的模板引用變量

        淺析Angular中的模板引用變量

        在列表組件的input框里引用ngxQuery的executeQuery()方法。當然如果我們要在ts中使用模板引用變量,就要使用@ViewChild和@ViewChildren是Angular提供給我們的裝飾器。

        我們在ts中通過模板變量名獲取獲取到ngxQuery組件:

        淺析Angular中的模板引用變量

        在ts中就可以直接調用ngxQuery的ExecuteQuery()方法,當有參數傳入時刷新列表:

        淺析Angular中的模板引用變量

        (有關ViewChild裝飾器的有關內容可以移步******)

        對于父子組件之間,模板引用變量也可以直接用:

        buGroup是bugroupSelectComponent中的一個數組,通過父子組件把其作為模板引用變量傳過來:

        淺析Angular中的模板引用變量
        淺析Angular中的模板引用變量

        在父組件ts中獲取到子組件的值并使用:

        淺析Angular中的模板引用變量

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 亚洲欧美日韩精品永久在线| 久久久精品视频免费观看| 北条麻妃国产九九九精品视频 | 97精品人妻一区二区三区香蕉| 亚洲欧美国产∧v精品综合网| 99久久www免费人成精品| 国产成人久久精品一区二区三区 | 韩国精品欧美一区二区三区| 日韩欧精品无码视频无删节 | 亚洲国产精品18久久久久久| 精品国产综合区久久久久久| 中国精品videossex中国高清| 国产精品福利自产拍在线观看| 最新精品露脸国产在线| 国产成人精品一区在线 | 亚洲成网777777国产精品| 国产精品无码专区在线观看| 亚洲国产精品lv| 久久久久四虎国产精品| 精品国内片67194| 国产精品一二三区| 国产精品久久99| 99在线精品一区二区三区| 精品一区二区三区自拍图片区| 亚洲午夜福利精品久久| 亚洲?V乱码久久精品蜜桃| 欧美日韩国产成人高清视频,欧美日韩在线精品一 | 久久99国内精品自在现线| 久久亚洲欧美国产精品 | 国精品产露脸自拍| 国产精品福利在线观看免费不卡| 日韩精品国产自在久久现线拍| 久久国产精品国产自线拍免费| 97精品人妻系列无码人妻| 91久久精品91久久性色| 精品久久久久久国产| 精品精品国产高清a毛片牛牛| 欧美精品第欧美第12页| 91无码人妻精品一区二区三区L| 91精品一区二区综合在线 | 中文字幕日韩精品在线|