2016-10-25 10 views
3

Я изучаю немного углового2, и я не могу найти информацию об этой проблеме. Когда я не закрываю тег <input>, я получаю ошибку синтаксического анализа. Это так странно для меня. Кроме того, кажется, что это ошибка, но я не могу найти никакой причины или дискуссии об этом.угловой вход 2 не сам закрыт

@Component({ 
    selector: 'my-app', 
    template: `<h1>My First Angular App</h1> 
     {{greeting}} 
     <br/> 
     {{product.id}} {{product.name}} {{product.price}} 
     <br/> 
     <span [innerHtml]="product.id"></span> 
     <span [innerHtml]="product.name"></span> 
     <span [innerHtml]="product.price"></span> 
     <br/> 
     <input [(ngModel)]="product.id"/> //Here is working correctly 
     ` 
}) 

Если я делаю то же самое, но таким образом, я получаю ошибку синтаксического анализа.

@Component({ 
    selector: 'my-app', 
    template: `<h1>My First Angular App</h1> 
     {{greeting}} 
     <br/> 
     {{product.id}} {{product.name}} {{product.price}} 
     <br/> 
     <span [innerHtml]="product.id"></span> 
     <span [innerHtml]="product.name"></span> 
     <span [innerHtml]="product.price"></span> 
     <br/> 
     <input [(ngModel)]="product.id"></input> //Here I get a Parse error 
     `   
}) 

Любая информация о помощи или ссылка об этой ошибке будет настолько полезной. Спасибо

ответ

3

Тег input является элементом пустоты, поэтому должен быть самозакрывающимся. Парсер Angular 2 очень просто разбирается в этом.

HTML sepcification получает более конкретно по этой теме:

Пустота элемент является элементом, содержание которого модель никогда не позволяет ему иметь содержание ни при каких обстоятельствах. Элементы Void могут иметь атрибуты.

Другие элементы являются недействительными: area, base, br, col, command, embed, hr, img, keygen, link, meta, param, source, track и wbr.

+1

aaah, это правда, я этого не осознавал. Большое вам спасибо, что я так запутался! – acostela

 Смежные вопросы

  • Нет связанных вопросов^_^