Javascript 将渲染数据-属性传递给角度
我需要将数据属性传递给角度控制器函数。(我相信有更好的名称,但上下文如下): Dropzone.js有一个“预览模板”。 对于您在dropzone中上载的每个文件,它都会呈现您在此处指定的HTML 下面是这个HTML的一部分:Javascript 将渲染数据-属性传递给角度,javascript,angularjs,html,dropzone.js,Javascript,Angularjs,Html,Dropzone.js,我需要将数据属性传递给角度控制器函数。(我相信有更好的名称,但上下文如下): Dropzone.js有一个“预览模板”。 对于您在dropzone中上载的每个文件,它都会呈现您在此处指定的HTML 下面是这个HTML的一部分: <div class="dz-size"><span data-dz-size></span></div> <div class="dz-filename"><span data-dz-na
<div class="dz-size"><span data-dz-size></span></div>
<div class="dz-filename"><span data-dz-name></span></div>
我想做一些类似的事情:
<div class="dz-filename"><span data-dz-name></span></div>
<i class="fa" class="{{getIconFromFilename(dz-name)}}" style="..."></i>
有人知道这个的正确语法吗?我找到了Dropzone的复杂角度指令 您可以在上载文件后捕获该文件,然后在您的作用域中设置适当的类名
$scope.dropzoneConfig = {
'options': { // passed into the Dropzone constructor
'url': 'upload.php'
},
'eventHandlers': {
'sending': function (file, xhr, formData) {
},
'success': function (file, response) {
// set scope icon class from file
}
}};
您所需要的是您的产品。根据函数返回的内容,这可能会起作用:
<i class="fa" ng-class="[getIconFromFilename(dz-name)]"></i>
我已经考虑过了。不过,范围是跨多个文件上载共享的。因此,当我试图在预览模板中找到合适的文件/索引时,仍然会遇到问题。实际上,通过这种方式解决了这个问题。请注意,对于每个希望执行相同操作的人,您可能需要使用$compile
为每个文件上载创建一个作用域。您能提供一个带有代码的JSFIDLE/Plnkr链接吗?dz名称代表什么?上传文件,右键单击文件名并查看源代码