我试图在AngularJS中创建一个自定义过滤器,它将按特定属性的值过滤对象列表.在这种情况下,我想过滤"极性"属性(可能的值为"正","中性","否定").
这是我没有过滤器的工作代码:
HTML:
<div class="total">
<h2 id="totalTitle"></h2>
<div>{{tweets.length}}</div>
<div id="totalPos">{{tweets.length|posFilter}}</div>
<div id="totalNeut">{{tweets.length|neutFilter}}</div>
<div id="totalNeg">{{tweets.length|negFilter}}</div>
</div>
Run Code Online (Sandbox Code Playgroud)
这是JSON格式的"$ scope.tweets"数组:
{{created_at: "Date", text: "tweet text", user:{name: "user name", screen_name: "user screen name", profile_image_url: "profile pic"}, retweet_count: "retweet count", polarity: "Positive"},
{created_at: "Date", text: "tweet text", user:{name: "user name", screen_name: "user screen name", profile_image_url: "profile pic"}, retweet_count: "retweet count", polarity: "Positive"},
{created_at: "Date", text: "tweet text", user:{name: "user name", screen_name: "user screen name", profile_image_url: "profile pic"}, retweet_count: "retweet count", polarity: "Positive"}}
Run Code Online (Sandbox Code Playgroud)
我能想出的最好的过滤器如下:
myAppModule.filter('posFilter', function(){ …Run Code Online (Sandbox Code Playgroud)