Loading...
Loading...
Compare original and translation side by side
ajaxSettingsfileSystemDataajaxSettingsfileSystemDataimport { Component } from '@angular/core';
import { FileManagerModule, NavigationPaneService, ToolbarService, DetailsViewService } from '@syncfusion/ej2-angular-filemanager';
@Component({
imports: [FileManagerModule],
providers: [NavigationPaneService, ToolbarService, DetailsViewService],
standalone: true,
selector: 'app-root',
template: `<ejs-filemanager
id='file-manager'
[ajaxSettings]='ajaxSettings'
height="500px">
</ejs-filemanager>`
})
export class AppComponent {
public ajaxSettings = {
url: 'https://ej2-aspcore-service.azurewebsites.net/api/FileManager/FileOperations',
getImageUrl: 'https://ej2-aspcore-service.azurewebsites.net/api/FileManager/GetImage',
uploadUrl: 'https://ej2-aspcore-service.azurewebsites.net/api/FileManager/Upload',
downloadUrl: 'https://ej2-aspcore-service.azurewebsites.net/api/FileManager/Download'
};
}import { Component } from '@angular/core';
import { FileManagerModule, NavigationPaneService, ToolbarService, DetailsViewService } from '@syncfusion/ej2-angular-filemanager';
@Component({
imports: [FileManagerModule],
providers: [NavigationPaneService, ToolbarService, DetailsViewService],
standalone: true,
selector: 'app-root',
template: `<ejs-filemanager
id='file-manager'
[ajaxSettings]='ajaxSettings'
height="500px">
</ejs-filemanager>`
})
export class AppComponent {
public ajaxSettings = {
url: 'https://ej2-aspcore-service.azurewebsites.net/api/FileManager/FileOperations',
getImageUrl: 'https://ej2-aspcore-service.azurewebsites.net/api/FileManager/GetImage',
uploadUrl: 'https://ej2-aspcore-service.azurewebsites.net/api/FileManager/Upload',
downloadUrl: 'https://ej2-aspcore-service.azurewebsites.net/api/FileManager/Download'
};
}import { Component } from '@angular/core';
import { FileManagerModule } from '@syncfusion/ej2-angular-filemanager';
import { FileData } from '@syncfusion/ej2-filemanager';
@Component({
imports: [FileManagerModule],
standalone: true,
selector: 'app-root',
template: `<ejs-filemanager
id='file-manager'
[fileSystemData]='fileData'
height="500px">
</ejs-filemanager>`
})
export class AppComponent {
public fileData: FileData[] = [
{
id: '1',
name: 'Documents',
isFile: false,
hasChild: true,
parentId: null,
dateModified: new Date('2024-01-15')
},
{
id: '2',
name: 'Resume.pdf',
isFile: true,
hasChild: false,
parentId: '1',
size: 204800,
dateModified: new Date('2024-01-10')
}
];
}import { Component } from '@angular/core';
import { FileManagerModule } from '@syncfusion/ej2-angular-filemanager';
import { FileData } from '@syncfusion/ej2-filemanager';
@Component({
imports: [FileManagerModule],
standalone: true,
selector: 'app-root',
template: `<ejs-filemanager
id='file-manager'
[fileSystemData]='fileData'
height="500px">
</ejs-filemanager>`
})
export class AppComponent {
public fileData: FileData[] = [
{
id: '1',
name: 'Documents',
isFile: false,
hasChild: true,
parentId: null,
dateModified: new Date('2024-01-15')
},
{
id: '2',
name: 'Resume.pdf',
isFile: true,
hasChild: false,
parentId: '1',
size: 204800,
dateModified: new Date('2024-01-10')
}
];
}// app.component.ts
ajaxSettings = {
url: '/api/FileManager/FileOperations',
getImageUrl: '/api/FileManager/GetImage',
uploadUrl: '/api/FileManager/Upload',
downloadUrl: '/api/FileManager/Download'
};
toolbarSettings = {
items: ['NewFolder', 'Upload', 'Download', 'Delete', 'Refresh', 'View', 'Details']
};// app.component.ts
ajaxSettings = {
url: '/api/FileManager/FileOperations',
getImageUrl: '/api/FileManager/GetImage',
uploadUrl: '/api/FileManager/Upload',
downloadUrl: '/api/FileManager/Download'
};
toolbarSettings = {
items: ['NewFolder', 'Upload', 'Download', 'Delete', 'Refresh', 'View', 'Details']
};fileData = this.apiService.getFiles().map(file => ({
id: file.id,
name: file.fileName,
isFile: file.type === 'file',
parentId: file.parentId || null,
size: file.fileSize,
dateModified: new Date(file.modified)
}));fileData = this.apiService.getFiles().map(file => ({
id: file.id,
name: file.fileName,
isFile: file.type === 'file',
parentId: file.parentId || null,
size: file.fileSize,
dateModified: new Date(file.modified)
}));// Inject VirtualizationService, enable enableVirtualization
providers: [VirtualizationService]
// In template
<ejs-filemanager
[enableVirtualization]="true"
[view]="'Details'"
...>
</ejs-filemanager>// 注入VirtualizationService,启用enableVirtualization
providers: [VirtualizationService]
// 在模板中
<ejs-filemanager
[enableVirtualization]="true"
[view]="'Details'"
...>
</ejs-filemanager>onDownloadSelected() {
const selected = this.fileManager.selectedItems;
// Download multiple files (server returns ZIP)
}onDownloadSelected() {
const selected = this.fileManager.selectedItems;
// 下载多个文件(服务器返回ZIP)
}| Property | Type | Purpose |
|---|---|---|
| AjaxSettingsModel | Server endpoints for file operations (url, uploadUrl, downloadUrl, getImageUrl) |
| FileData[] | Local JSON data (alternative to ajaxSettings) |
| string | Initial directory path to display |
| ViewType | Initial view mode: 'Details' or 'LargeIcons' |
| string | number | Component height |
| string | number | Component width |
| 属性 | 类型 | 用途 |
|---|---|---|
| AjaxSettingsModel | 文件操作的服务器端点(url、uploadUrl、downloadUrl、getImageUrl) |
| FileData[] | 本地JSON数据(ajaxSettings的替代方案) |
| string | 初始显示的目录路径 |
| ViewType | 初始视图模式:'Details'或'LargeIcons' |
| string | number | 组件高度 |
| string | number | 组件宽度 |
| Property | Type | Purpose |
|---|---|---|
| boolean | Enable Ctrl+Click and Shift+Click selection |
| boolean | Enable drag-based selection (Windows Explorer style) |
| 属性 | 类型 | 用途 |
|---|---|---|
| boolean | 启用Ctrl+点击和Shift+点击选择 |
| boolean | 启用基于拖拽的选择(类似Windows资源管理器) |
| Property | Type | Purpose |
|---|---|---|
| boolean | Enable drag-and-drop file movement |
| UploadSettingsModel | Upload config (maxFileSize, minFileSize, autoUpload, allowedExtensions, directoryUpload) |
| SearchSettingsModel | Search config (filterType, allowSearchOnTyping, caseSensitive) |
| 属性 | 类型 | 用途 |
|---|---|---|
| boolean | 启用拖放式文件移动 |
| UploadSettingsModel | 上传配置(maxFileSize、minFileSize、autoUpload、allowedExtensions、directoryUpload) |
| SearchSettingsModel | 搜索配置(filterType、allowSearchOnTyping、caseSensitive) |
| Property | Type | Purpose |
|---|---|---|
| boolean | Display image thumbnails |
| boolean | Show/hide hidden files and folders (default: false) |
| boolean | Display file extensions (default: true) |
| boolean | Virtualize large file sets (1000+ items) |
| boolean | Persist view, path, and selected items |
| boolean | Right-to-left layout support |
| boolean | Sanitize HTML for security |
| 属性 | 类型 | 用途 |
|---|---|---|
| boolean | 显示图片缩略图 |
| boolean | 显示/隐藏隐藏文件和文件夹(默认:false) |
| boolean | 显示文件扩展名(默认:true) |
| boolean | 虚拟化大型文件集(1000+项) |
| boolean | 持久化视图、路径和选中项 |
| boolean | 从右到左布局支持 |
| boolean | 对HTML进行 sanitize 处理以保障安全 |
| Property | Type | Purpose |
|---|---|---|
| ToolbarSettingsModel | Toolbar items and visibility |
| NavigationPaneSettingsModel | Left sidebar configuration |
| ContextMenuSettingsModel | Right-click menu customization |
| DetailsViewSettingsModel | Details view columns and sorting |
| string | object | Custom template for navigation nodes |
| string | object | Custom template for large icons view |
| string | CSS class for theming |
| string | Localization culture (e.g., 'de-DE', 'ja-JP') |
| 属性 | 类型 | 用途 |
|---|---|---|
| ToolbarSettingsModel | 工具栏项与可见性 |
| NavigationPaneSettingsModel | 左侧边栏配置 |
| ContextMenuSettingsModel | 右键菜单自定义 |
| DetailsViewSettingsModel | 详细信息视图列与排序 |
| string | object | 导航节点的自定义模板 |
| string | object | 大图标视图的自定义模板 |
| string | 用于主题设置的CSS类 |
| string | 本地化文化(例如:'de-DE'、'ja-JP') |
| Property | Type | Purpose |
|---|---|---|
| Function | Custom sort function (Windows Explorer-like sorting available) |
| 属性 | 类型 | 用途 |
|---|---|---|
| Function | 自定义排序函数(提供类似Windows资源管理器的排序) |
Do you have a backend file service?
├─ YES → Use ajaxSettings (see Getting Started)
│ └─ Need to handle 1000+ files?
│ ├─ YES → Enable enableVirtualization
│ └─ NO → Standard setup
│
└─ NO → Use fileSystemData with local JSON
└─ Need to organize hierarchically?
├─ YES → Use nested items with parentId
└─ NO → Use flat data structure你是否有后端文件服务?
├─ 是 → 使用ajaxSettings(参见快速入门)
│ └─ 需要处理1000+个文件?
│ ├─ 是 → 启用enableVirtualization
│ └─ 否 → 标准设置
│
└─ 否 → 使用fileSystemData与本地JSON
└─ 需要层级组织?
├─ 是 → 使用带parentId的嵌套项
└─ 否 → 使用扁平数据结构