テストに angularJS を使用する場合、ng-reapt="pro in products | filter:search" 特に大きな質問です次のテストで、search 入力ボックスに a を入力すると結果が生成されるのはなぜですか
ng-reapt="pro in products | filter:search"
search
a
http://plnkr.co/edit/wZIOF1uAvEgB9UPD1EnW?p=previewhttp://plnkr.co/edit/wZIOF1uAvEgB9UPD1EnW?p=preview
小伙看你根骨奇佳,潜力无限,来学PHP伐。
フィルターするフィールドを指定しない場合、デフォルトのフィルターはすべてのフィールドの値と一致します。 a を入力すると、angular はデフォルトで false を文字列に変換し、a は false と一致します。フィルター条件をこれに変更すると
a を押すと、結果は表示されません。これは、名前フィールドの値のみがフィルターされることを意味します。
ng は、product の 3 つのフィールド (key、name、is_in_presale) にデフォルト設定されているためです。 > は文字列に変換され、入力と比較されるため、a は実際には false の a と一致します。 true を入力してみて、結果の違いを感じてみてください。 ng默认把你product里三个字段key,name,is_in_presale都转成字符串和你的输入去比较了,所以a其实匹配到的是false里的a。你可以试试输入true,就感受到结果区别了。
ng
product
key
name
is_in_presale
false
true
如果需要指定字段进行filter
filter
フィルターするフィールドを指定しない場合、デフォルトのフィルターはすべてのフィールドの値と一致します。 a を入力すると、angular はデフォルトで false を文字列に変換し、a は false と一致します。フィルター条件をこれに変更すると
リーリーa を押すと、結果は表示されません。これは、名前フィールドの値のみがフィルターされることを意味します。
ng
は、product
の 3 つのフィールド (key
、name
、is_in_presale
) にデフォルト設定されているためです。 > は文字列に変換され、入力と比較されるため、a
は実際にはfalse
のa
と一致します。true
を入力してみて、結果の違いを感じてみてください。ng
默认把你product
里三个字段key
,name
,is_in_presale
都转成字符串和你的输入去比较了,所以a
其实匹配到的是false
里的a
。你可以试试输入true
,就感受到结果区别了。如果需要指定字段进行
filter
filter
のフィールドを指定する必要がある場合は、ドキュメントを参照してください: