SAPUI5 Uncaught TypeError: XLSX.read не является функцией

Я использую xlsx.js (сторонний) в моем html5-приложении. И я перешел по следующей ссылке в качестве ссылки для добавления сторонней библиотеки в приложение html5.

https://blogs.sap.com/2017/04/30/how-to-include-third-party-libraries-modules-in-sapui5/

Excel читать функции

handleExcelUpload: function() {
            var fileUpload = this.getView().byId("idfileUploader");
            var domRef = fileUpload.getFocusDomRef();
            var file = domRef.files[0];
            if (file === undefined) {
                var ss = 0;
            } else {
                this.importExcelFile(file);
            }
        },
        importExcelFile: function(file) {
            var that = this;
            if (file && window.FileReader) {

                //Initialize Reader
                var reader = new FileReader();
                var result = {},
                    data;

                reader.onload = function(e) {
                    data = e.target.result;
                    //get workbook data as binary
                    var wb = XLSX.read(data, {
                        type: 'binary'
                    });

                    wb.SheetNames.forEach(function(sheetName) {
                        var roa = XLSX.utils.sheet_to_row_object_array(wb.Sheets[sheetName]);

                        if (roa.length > 0) {
                            result[sheetName] = roa;
                        }
                        that.bindTable(result, sheetName);
                        return result;
                    });
                };
                reader.readAsBinaryString(file);
            }
        }

Проблема в том, что приложение работает отлично, когда я запускаю приложение в web-IDE. Но после развертывания на стартовой панели fiori выдается следующая ошибка

Home.controller.js? Eval:31 Uncaught TypeError: XLSX.read не является функцией в FileReader.reader.onload (Home.controller.js? Eval:31)

Я пробовал и другие способы. такие как

1) добавление ссылок на раздел ресурсов в манифесте

"resources": {
        "css": [
            {
                "uri": "css/style.css"
            }
        ],
        "js": [
            {
                "uri": "lib/xlsx.js"
            }
        ]
    },

2) Загрузка библиотек с использованием компонента js

jQuery.sap.require("sampleApp.lib.xlsx");
jQuery.sap.require("sampleApp.lib.jszip");

Но ни один из описанных выше способов не работает при развертывании на стартовой панели облака fiori. Как я могу решить эту проблему?

0 ответов

Другие вопросы по тегам