如果字符串包含角度,则为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. 如果干草堆中没有 ,则返回-1
    2. 如果在干草堆的开头存在 ,则返回0
    3. 否则返回的索引。

    可以将索引与-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