如果字符串包含角度,则为ng
我有以下Angular代码:
{{new.label}}
如何使用ng-if条件查找特定字符:
ng-if="select.name == '?'"
只在角色出现时显示代码? 我的价值是88?77,数字是动态的,但问号总是在那里,我似乎无法根据它进行过滤?
ES2015更新
ES2015有String#includes
#include方法,用于检查字符串是否包含另一个字符串。 如果目标环境支持,则可以使用此选项。 如果在haystack中找到针,则返回true
,否则返回false
。
ng-if="haystack.includes(needle)"
这里, needle
是在haystack
搜索的字符串。
请参阅MDN中的浏览器兼容性表。 请注意,IE和Opera不支持此function。 在这种情况下,可以使用填充剂 。
您可以使用String#indexOf
来获取haystack中 针的索引。
- 如果干草堆中没有针 ,则返回-1 。
- 如果在干草堆的开头存在针 ,则返回0 。
- 否则返回针的索引。
可以将索引与-1
进行比较,以检查是否在大海捞针中找到针 。
ng-if="haystack.indexOf(needle) > -1"
ng-if="select.name.indexOf('?') !== -1"
所有javascript方法都适用于angularjs,因为angularjs本身是一个javascript框架,所以你可以在angular指令中使用indexOf()
{{newin.label}} //where x is your character to be found
在控制器function中进行类似的检查。 您的HTML应该是易于阅读的标记,没有逻辑。
控制器:
angular.module("myApp") .controller("myController",function(){ var self = this; self.select = { /* ... */ }; self.showFoo = function() { //Checks if self.select.name contains the character '?' return self.select.name.indexOf('?') != -1; } });
页面示例:
Bar