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>