SyntaxError: неожиданный идентификатор (строка 11, файл «DeleteFiles») - PullRequest
0 голосов
/ 07 февраля 2020

Поэтому я некоторое время назад обратился за помощью к созданию конвертера .xls, и он прекрасно работал, до сих пор он вдруг не работает и выдает мне эту ошибку: SyntaxError: Неожиданный идентификатор (строка 11, файл "DeleteFiles") , Я просмотрел код и не обнаружил синтаксическую ошибку. Любая помощь в решении этого будет принята с благодарностью.

function XLSConvert() {

    var files = DriveApp.searchFiles("title contains '.xls' and parents in 'File_ID'");
    var destinationFolderId = "File_ID";
    var existingFileNames = getFilesInFolder(destinationFolderId);
    while (files.hasNext()) {
        var xFile = files.next();
        var name = xFile.getName();
        try {
            if (!existingFileNames[name] && (name.indexOf('.xls') > -1)) {
                var ID = xFile.getId();
                var xBlob = xFile.getBlob();
                var newFile = {
                    title: name,
                    key: ID,
                    'parents': [{
                        "id": destinationFolderId
                    }]
                }
                file = Drive.Files.insert(newFile, xBlob, {
                    convert: true
                });
            }
        } catch (error) {
            console.error("Error with file " + name + ": " + error);
        }
    }

    function getFilesInFolder(folderId) {
        var folderId = "File_ID";
        var folder = DriveApp.getFolderById(folderId);
        var filesIterator = folder.getFiles();
        var files = {};
        while (filesIterator.hasNext()) {
            var file = filesIterator.next();
            files[file.getName()] = true;
        }
        return files;
    }

}

1 Ответ

2 голосов
/ 07 февраля 2020

Если вы столкнулись с этой проблемой, в частности касающейся синтаксической ошибки, которой у вас никогда не было в определенном сценарии, возможно, что переход Google с Mozilla Rhino (ES5) на Chrome V8 привел к тому, что предыдущий синтаксис работал нормально быть проблематичным c. Если вы по-прежнему хотите запускать сценарии, не меняя их в соответствии с более новой номенклатурой, просто go выберите «Выполнить» и выберите «Выполнить в устаревшем режиме» в нижней части меню.

Как перенести ваши скрипты для работы в Chrome V8: https://developers.google.com/apps-script/guides/v8-runtime/migration

Как включить устаревший режим, чтобы ваши скрипты продолжали работать под Rhino: https://developers.google.com/apps-script/guides/v8-runtime#enabling_the_rhino_runtime

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...