如何将 dxFileUploader 配置为像一个简单的按钮一样显示?

How to configure dxFileUploader to show up like a simple button?

我有一个 dxFileUploader:

<div data-bind="dxFileUploader: { buttonText: 'Select file', labelText: 'Drop file here', accept: 'image/*' }"></div>

在 UI 我得到了一个周围的白色区域 (div)。

如何摆脱它? 我只需要一个带有图标的简单按钮,不需要像这样的文本:

<div data-bind="dxButton: { icon: 'arrowup' }"></div>

为您的文件上传器使用以下样式

.dx-fileuploader, 
.dx-fileuploader * {
    display: inline-block;    
    margin: 0;
    vertical-align: middle;
}
.dx-fileuploader-input-container {
    display: none;
}
.dx-fileuploader-wrapper, 
.dx-fileuploader-input-wrapper{
    padding: 0;
    border: none;
}

要为按钮设置图标,请执行以下操作

$("#fileUploader").find(".dx-button").dxButton("option", "icon", "arrowup");

如果您还需要隐藏所选文件信息,请再添加一个css规则

.dx-fileuploader-files-container {
    display: none;
}

查看 fiddle http://jsfiddle.net/tabalinas/uf5vzgdw/

您可以在

中使用 fontawesome 破解
onContentReady = e => {
    const node = document.createElement('I');
    node.className = 'cstm-icon fas fa-upload'
    document.querySelector('.uploader-container .dx-button-text').appendChild(node);
}

并添加一些 css

只需设置[showFileList]="false"

例如:

<dx-file-uploader
  selectButtonText="Select File..."
   [showFileList]="false"
   labelText
   accept="image/*"
   uploadMode="useForm">
 </dx-file-uploader>