そのラベルのコンテンツが存在しない場合、ラベルを表示/非表示にするために ng-show を使用しようとしています。たとえば、モデルに電話番号を入力すると、「Phone:」ラベルが表示され、実際の番号が続きます。ただし、 ng-show は、コンテンツ/コンテンツなしに基づいて true/false ではなく、スコープ/モデルを評価しているようです...それを false と評価しているようです。ブール値ではなくコンテンツを評価するにはどうすればよいですか?
<input type="text" ng-model="data.product.user.phone" />
<div ng-show="data.product.user.phone">
<div>Phone:{{data.product.user.phone}}</div>
</div>
私はフィドリンが本当に苦手なので、くだらないフィドルを許してください。それはまったく機能しません。http://jsfiddle.net/xVZHL/2/
更新:したがって、フィドルは機能します。しかし、私のソースコードはそうではありません。唯一の違いは、バックエンド/他の場所でモデルを生成して保存しているため、メインページで作成および制御されていないことですが、機能していません...これをフィドルで表示する方法がわかりません。これが機能しない私のライブコードです。
<field ng-show="data.product.phone" for="phone" model="data.product.phone" placeholder="Phone" type="field-view"> </field>
field は、テンプレート/ディレクティブに挿入される for、モデル、およびプレースホルダーの属性を持つディレクティブです。この例の目的のために、 data.product.phone には間違いなくコンテンツが含まれていますが、表示されるべきであっても表示されません。