私は要素にテンプレート変数を定義しようとしています。隠し属性を使用して要素が実際にDOMに存在するかどうかを識別し、それに基づいて別の要素を表示します。しかし、もし構造ディレクティブがあれば、テンプレート変数は値を返さないようです。ngIfのAngular 2テンプレート変数へのアクセス方法
<hr class="divider" *ngIf="true" #divi>
<div *ngIf="showResendWelcomeEmailButton">
<a *wpHasAnyPermission="[{'something': true}]"
#resendEmailBtn>
Resend Welcome Email
</a>
</div>
<div class="pull-right">
<a #editAccountBtn>Edit Account Details</a>
</div>
rbtn: {{resendEmailBtn?.hidden}}
ebtn: {{editAccountBtn?.hidden}}
dline: {{divi?.hidden}}
出力あなたは属性ngIf
とwpHasAnyPermission
を含む要素のテンプレート変数の両方が値を返すされていない見ることができるように
rbtn:
ebtn: false
dline:
です。私は最終的に何をしたいのか
は、分周器を表示するかを決定するhr
のngIf
にresendEmailBtn
とeditAccountBtn
を使用することです。
これを解決する最良の方法は何ですか?私はコンポーネントコードを扱わないようにしたい。これをHTMLで解決しようとします。
「editAccountBtn」が外部からどのようにアクセス可能であったのか不思議です。あなたが言及したのは、構造的な属性を持つ要素にのみ適用できますか?私の問題を解決する最良の方法は何ですか? – TechCrunch
答えを更新しました。 –
私は質問を明確に聞いたかどうか分かりません。私がしたいのは、 '
'でしたので、ボタンが存在するときだけディバイダを表示できます。私は 'hr'要素の変数については気にしません。 – TechCrunch