Javascript IE支持多个Angular ng类表达式

Javascript IE支持多个Angular ng类表达式,javascript,angularjs,internet-explorer,internet-explorer-11,Javascript,Angularjs,Internet Explorer,Internet Explorer 11,我在下面有一个代码示例,其中我检查了文件扩展名,并相应地为上传的文件设置了图标。由于支持多个文件,我为每个文件设置了图标,并根据扩展名应用了具有ng class属性的相关类。它在IE11中不起作用。我用一个表达式进行检查以确认它是否有效。有解决办法吗 <i flex ng-class="{ 'icon-pdf': (fileDetails['extention'].search('pdf') != -1), 'icon-word': (fileDet

我在下面有一个代码示例,其中我检查了文件扩展名,并相应地为上传的文件设置了图标。由于支持多个文件,我为每个文件设置了图标,并根据扩展名应用了具有
ng class
属性的相关类。它在IE11中不起作用。我用一个表达式进行检查以确认它是否有效。有解决办法吗

<i flex ng-class="{
          'icon-pdf': (fileDetails['extention'].search('pdf') != -1),
          'icon-word': (fileDetails['extention'].search('doc') != -1),
          'icon-ppt': (fileDetails['extention'].search('ppt') != -1),
          'icon-xls': (fileDetails['extention'].search('xlsx') != -1),
          'icon-html': (fileDetails['extention'].search('html') != -1),
          'icon-jpg': (fileDetails['extention'].search('jpg') != -1),
                        'icon-jpg': (fileDetails['extention'].search('png') != -1),
          'icon-wit': (fileDetails['extention'].search('txt') != -1)}"
>
            </i>

我以前没有读过这个bug,但是您可以创建一个返回正确类的函数,而不是具有多个
ng class
属性,例如:

在模板中:

<i flex ng-class="getIconClass(fileDetails['extention'].search)"></i>

我找到了一种方法,除了Martijn的方法(更干净)外,还使用了
ng class
三元运算符。发布它是为了扩展知识

<i flex ng-class="
    fileDetails['extention'].search('pdf') != -1? 'icon-pdf': 
    fileDetails['extention'].search('doc') != -1 ? 'icon-word': 
    fileDetails['extention'].search('ppt') != -1? 'icon-ppt':
    fileDetails['extention'].search('xlsx') != -1? 'icon-xls':
    fileDetails['extention'].search('html') != -1? 'icon-html':
    fileDetails['extention'].search('jpg') != -1? 'icon-jpg':
    fileDetails['extention'].search('png') != -1? 'icon-jpg':
    fileDetails['extention'].search('txt') != -1? 'icon-wit': 'icon-html' "></i>

谢谢。这似乎是更干净的方法。我也找到了一个方法,贴在下面的答案中,也许也有帮助。
<i flex ng-class="
    fileDetails['extention'].search('pdf') != -1? 'icon-pdf': 
    fileDetails['extention'].search('doc') != -1 ? 'icon-word': 
    fileDetails['extention'].search('ppt') != -1? 'icon-ppt':
    fileDetails['extention'].search('xlsx') != -1? 'icon-xls':
    fileDetails['extention'].search('html') != -1? 'icon-html':
    fileDetails['extention'].search('jpg') != -1? 'icon-jpg':
    fileDetails['extention'].search('png') != -1? 'icon-jpg':
    fileDetails['extention'].search('txt') != -1? 'icon-wit': 'icon-html' "></i>