Vue Common - Object Structures - FileSystemError

An object that contains information about the error.

import FileSystemError from "devextreme/file_management/error"

App.vue
data.js
  • <template>
  • <DxFileManager :file-system-provider="keepExtensionsProvider">
  • <DxPermissions :rename="true" />
  • </DxFileManager>
  • </template>
  •  
  • <script>
  • import ObjectFileSystemProvider from "devextreme/file_management/object_provider";
  • import CustomFileSystemProvider from "devextreme/file_management/custom_provider";
  • import FileSystemError from "devextreme/file_management/error";
  • import { DxFileManager, DxPermissions } from "devextreme-vue/file-manager";
  • import { fileItems } from "./data.js";
  • export default {
  • components: {
  • DxFileManager,
  • DxPermissions,
  • },
  • data() {
  • return {
  • objectProvider: new ObjectFileSystemProvider({ data: fileItems }),
  • keepExtensionsProvider: new CustomFileSystemProvider({
  • getItems: (parentDir) => this.getItems(parentDir),
  • renameItem: (item, newName) => this.renameItem(item, newName),
  • }),
  • };
  • },
  • methods: {
  • getItems(parentDir) {
  • return this.objectProvider.getItems(parentDir);
  • },
  • renameItem(item, newName) {
  • return new Promise((resolve, reject) => {
  • if(item.getFileExtension() !== this.getExtension(newName)) {
  • // 1 - reject
  • reject(new FileSystemError(5, item, "You cannot change the file extension."));
  • // 2 - throw
  • // throw new FileSystemError(5, item, "You cannot change the file extension.");
  • } else {
  • resolve(this.objectProvider.renameItem(item, newName));
  • }
  • });
  • },
  • },
  • },
  • };
  • </script>
  • export const fileItems = [{
  • 'name': 'Documents',
  • 'isDirectory': true,
  • 'items': [{
  • 'name': 'Projects',
  • 'isDirectory': true,
  • 'items': [{
  • 'name': 'About.rtf',
  • 'isDirectory': false,
  • 'size': 1024
  • }, {
  • 'name': 'Passwords.rtf',
  • 'isDirectory': false,
  • 'size': 2048
  • }]
  • }, {
  • 'name': 'About.xml',
  • 'isDirectory': false,
  • 'size': 1024
  • }, {
  • 'name': 'Managers.rtf',
  • 'isDirectory': false,
  • 'size': 2048
  • }, {
  • 'name': 'ToDo.txt',
  • 'isDirectory': false,
  • 'size': 3072
  • }],
  • }, {
  • 'name': 'Images',
  • 'isDirectory': true,
  • 'items': [{
  • 'name': 'logo.png',
  • 'isDirectory': false,
  • 'size': 20480
  • }, {
  • 'name': 'banner.gif',
  • 'isDirectory': false,
  • 'size': 10240
  • }]
  • }, {
  • 'name': 'System',
  • 'isDirectory': true,
  • 'items': [{
  • 'name': 'Employees.txt',
  • 'isDirectory': false,
  • 'size': 3072
  • }, {
  • 'name': 'PasswordList.txt',
  • 'isDirectory': false,
  • 'size': 5120
  • }]
  • }, {
  • 'name': 'Description.rtf',
  • 'isDirectory': false,
  • 'size': 1024
  • }, {
  • 'name': 'Description.txt',
  • 'isDirectory': false,
  • 'size': 2048
  • }];

errorCode

The error code.

Type:

Number

The following error codes are supported:

  • NoAccess = 0
  • FileExists = 1
  • FileNotFound = 2
  • DirectoryExists = 3
  • DirectoryNotFound = 4
  • WrongFileExtension = 5
  • MaxFileSizeExceeded = 6
  • Other = 32767

errorText

The error message.

Type:

String

fileSystemItem

The processed file or directory.