2017-03-28 21 views
6

Tôi nhận được cảnh báo này:góc 4 và ng-mẫu

The <template> element is deprecated. Use <ng-template> instead (" 
     [attr.tabIndex]="-1" 
     [ngClass]="{'k-item': true}"> 
     [WARNING ->]<template *ngIf="template" 
      [templateContext]="{ 

khi sử dụng 4, được này được đưa về chăm sóc góc của cho các phiên bản phát hành?

cảm ơn

Trả lời

15

Bạn cần phải quan tâm đến điều đó. Bạn cần phải sửa đổi mã của bạn và thay đổi tất cả lần xuất hiện của

<template> 

để

<ng-template> 

<template> gây ra xung đột với tập quán khác của thẻ <template>, do đó đội kiễu góc thay đổi nó để sử dụng <ng-template> cho các mục đích góc. Đó là một thay đổi phá vỡ, do đó họ không giới thiệu sự thay đổi này trong Angular2 nhưng chỉ trong Angular4 theo các quy tắc phiên bản ngữ nghĩa.

1

Sự cố cũng có thể không có trong mã của bạn. Ví dụ: nếu bạn đang sử dụng bản phát hành beta cuối cùng của @ angular/material @ 2.0.0-beta.2, bạn sẽ nhận được những điều này khi bạn sử dụng các thành phần vật liệu nhất định.

Nếu đó là nguồn gốc của thư của bạn, đừng sợ ... một bản phát hành tài liệu mới sửa lỗi này được cho là sẽ rơi vào bất kỳ ngày nào.

Cũng cần nói rằng những gì bạn thấy là cảnh báo không dùng nữa sẽ không tạo ra lỗi trong ứng dụng của bạn. Nhưng chúng là những thứ cần được sửa chữa trước khi chuyển sang bản phát hành chính tiếp theo.

2

Đơn giản chỉ cần sử dụng <ng-template>, <template> sẽ bị xóa khỏi góc 4 vì nó quá chung chung và tạo ra một số tên xung đột, bây giờ đội kiễu góc quyết định đã tất cả mọi thứ bắt đầu với ng như nó đã và nên được.

Cũng có thể sử dụng if else trong khuôn mẫu mới, hãy nhìn vào ví dụ đơn giản dưới đây:

<ng-template #laoding> 
    <p>Loading...</p> 
</ng-template> 
<p *ngIf="auth | async; else laoding; let user"> 
    {{user.username }} 
</p> 
0

ng-mẫu trong góc 4 có thể được sử dụng như-

<div *ngIf="isValid; else notValidCondition"> 
    Welcome User 
</div> 

<ng-template #notValidCondition>Good Bye</ng-template>