it-source

각도 구성 요소: 템플릿 바꾸기 옵션이 없습니까?

criticalcode 2023. 2. 16. 21:47
반응형

각도 구성 요소: 템플릿 바꾸기 옵션이 없습니까?

새로운 AngularJS 1.5 컴포넌트 개념에는 (지시용과 마찬가지로) "교체" 옵션이 없는 것 같습니다.

테이블 행을 원하는 경우 무엇을 제안하시겠습니까? <TR>컴포넌트로서요?유효한 HTML로는 불가능합니까?

실제 예: mailBox 컴포넌트 내부에 메일컴포넌트가 있어요mail-box-component는 table, mail-box는 tr입니다.

<mail-box>
    <mail ng-repeat="mail in $ctrl.mails" mail="mail"></mail>
<mail-box>

UPD: 디렉티브에 대한 관련 토론 - 왜 AngularJS에서는 치환이 권장되지 않는가?

replace: true 플래그가 더 이상 사용되지 않으므로 더 이상 각도 방식을 사용할 수 없습니다.

왜 AngularJS에서는 교환이 권장되지 않습니까?

대체: True Flag가 솔루션보다 더 많은 문제를 일으켰기 때문에 제거되었습니다.따라서 이러한 방법으로 디렉티브를 작성하고 유효한 table-tr-markup을 제공할 수 없습니다.

단, 이것이 보기만큼 나쁘지 않은 이유는 다음 두 가지가 있습니다.

  1. 테이블, tr, td 등 없이 div, span 등의 요소와 css를 사용하여 원하는 모든 것을 할 수 있습니다.

  2. 웹 컴포넌트(및 그것들을 시뮬레이트하기 위한 첫 번째 시도)는 마크업의 작은 조각을 나타내는 것을 의미하지 않습니다.그것들은 실제로 어떤 일을 하는 완전한 기능을 하는 컴포넌트로 생각됩니다.그래서 그 주위에 요소 냉각기를 만들 가치가 있다고 생각되는 것은 무엇이든 간에 아마 아닐 것입니다.

그 대신 attribute-directive를 사용할 수 있습니다.

<tr my-mail-directive></tr>

그리고 당신의 메일 수신기가 TR 요소에서 마법을 부리고

언급URL : https://stackoverflow.com/questions/35290332/angular-component-no-template-replace-option

반응형