カスタム HTML タグなしで AngularJS を使用するにはどうすればよいですか?
-
02-01-2020 - |
質問
使おうとしています UIブートストラップのインライン日付ピッカーですが、カスタム タグで動作します。
<datepicker ng-model="dt" min-date="minDate"></datepicker>
私のテンプレートプロセッサはカスタムタグをサポートしていません。これを標準タグで動作させる方法はありますか。何かのようなもの <div ng-something="datepicker"></div>
?
AngularJS がカスタム タグを使用する方法と理由については議論されてきました。 ここ そして ここ, 、AngularJS にはいくつかの機能があります 博士 IE8がJSを使用してカスタムタグを受け入れるようにする方法についてですが、私の問題はHTML生成ステップにあります。ブラウザの問題ではありません。
テンプレート プロセッサは変更できないことに注意してください。W3C 準拠の HTML を使用するには標準タグを使用する必要があるため、この質問はそれよりも大きくなります。AngularJS では、標準属性を使用できます (先頭に追加することで) data-
)、しかし標準タグを使用する方法が見つかりません。
解決
次のようなことを試してみてください。
<div data-datepicker ng-model="dt" min-date="minDate"></div>
編集:ui-bootstrap の datepicker ディレクティブとして機能するはずです (https://github.com/angular-ui/bootstrap/blob/master/src/datepicker/datepicker.js)があるようです restrict
に設定された属性 'EA'
, 、つまり、次の方法で使用できます。 E
要素または A
トリビュート。したがって、上記の例を参考にしていただいても問題ないと思います。