AngularJS - как добавить filesaver.js в библиотеку meanjs

Я пытаюсь реализовать filesaver.js с помощью meanjs. Но это не работает.

Можно ли использовать его с mejs ??

Я выполнил следующие шаги.

1- после установки файлообменника загрузить файл через Bower командой:

bower install file-saver --save

2- Я включил ссылку на файлы fileSaver.js на страницу макета моего приложения в файле: config\env\all.js следующим образом:

assets: {
        lib: {
            css: [
                'public/lib/bootstrap/dist/css/bootstrap.css',
                'public/lib/bootstrap/dist/css/bootstrap-theme.css'               
            ],
            js: [
                'public/lib/angular/angular.js',
          'public/lib/file-saver/FileSaver.min.js',
                'public/lib/file-saver/FileSaver.js',
                ]
            },

3- затем я включил файловую заставку в качестве зависимости в свое угловое приложение в файл: public\config.js, добавив «fileSaver» в конце массива в этой строке:

var applicationModuleVendorDependencies = ['ngResource', 'ngCookies',  'ngAnimate',  'ngTouch',  'ngSanitize',  'ui.router', 'ui.bootstrap', 'ui.utils', 'fileSaver'];

4- Я пытаюсь экспортировать в лист XL, используя следующий код из моего клиентского контроллера meanjs.

$scope.export = function($event) {
$event.preventDefault();
$event.stopPropagation();
var blob = new Blob([document.getElementById('exportable').innerHTM], {
    type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8'
});
saveAs(blob, 'Report.xls');
};

Я не могу использовать файловую заставку, на мой взгляд. Он предупреждает, что «saveAs» не определен.

Спасибо.


person Adithi    schedule 02.12.2014    source источник
comment
Я бы использовал чистый javascript. Использование MEAN не означает (без каламбура), что вы должны идти по пути Angular. Я не эксперт по JS, но вы не можете просто добавить чистую библиотеку JS и предположить, что вы можете импортировать ее с помощью внедрения зависимостей. Я предлагаю вам создать сервис, поместить туда весь чистый javascript, кодировать на чистом javascript (JS-библиотека fileSaver) и вернуть результат CRUD-операций, выполненных fileSaver. Затем вы просто подключаете свой сервис через DI к своему контроллеру и вуаля.   -  person Christian Bonato    schedule 02.12.2014


Ответы (1)


Я удалил файловую заставку из applicationModuleVendorDependencies, и это сработало.

person Adithi    schedule 04.12.2014