1
我试图使用meanjs实现filesaver.js。但它不起作用。AngularJS - 如何将filesaver.js添加到meanjs库
是否有可能与meanjs一起使用?
我按照以下步骤操作。
1-通过女郎用命令安装filesaver文件上传后:
bower install file-saver --save
2 - 我有包括参考fileSaver.js文件中的文件在我的应用程序布局页:配置\ ENV \所有。这样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-然后我包括filesaver如在我的角度应用的依赖关系,在该文件中:公共\ config.js,通过在该行的阵列的末尾添加“fileSaver”:
var applicationModuleVendorDependencies = ['ngResource', 'ngCookies', 'ngAnimate', 'ngTouch', 'ngSanitize', 'ui.router', 'ui.bootstrap', 'ui.utils', 'fileSaver'];
4-我试图从我的meanjs客户端控制器中使用以下代码导出到XL工作表。
$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'没有定义。
谢谢。
我会用纯javascript。使用MEAN并不意味着(不是双关语),你必须采用Angular的方式。我不是JS专家,但你不能只添加一个纯JS库,并假设你可以通过依赖注入来“导入”它。我建议你建立一个服务,把所有的纯JavaScript放在那里,代码放在“纯”JavaScript(fileSaver JS库)中,并返回由fileSaver执行的CRUD操作的结果。然后,您只需通过DI将您的服务连接到您的控制器,然后就可以了。 – 2014-12-02 13:55:34