我是
angularjs的新手,我的项目使用angularjs和ionic在
android和IOS平台上运行.我需要用图像网址将图像保存到手机相册(支持IOS和Andorid)中.我知道cordova插件可以从url下载图像,但我无法理解如何安装cordova-plugin-file-transfer.有没有其他更简单的方法来实现这个功能?谢谢.
angular.module('myApp', []);
angular.module('myApp').controller('HomeCtrl', ['$scope', '$http', function($scope, $http) {
$scope.saveImg = function(imgUrl){
var hideSheet = $ionicActionSheet.show({
buttons: [
{text: 'save image'},
{text: 'copy link'},
],
cancelText: 'cancel',
cancel: function () {
},
buttonClicked: function (index) {
if (index == 0) {//save image here
}
}
});
}
}]);
<img ng-src="{{imgUrl}}" on-hold="saveImg(imgUrl)">
最佳答案 首先,您需要使用CLI安装插件:
cordova plugin add cordova-plugin-file-transfer
现在在模块中注入对ngCordova的依赖
$cordovaFile转移到您的控制器并添加以下代码:
var app= angular.module('myApp', ['ngCordova']);
app.controller('HomeCtrl', ['$scope', '$http', '$cordovaFileTransfer',function($scope, $http,$cordovaFileTransfer) {
var url = "http://cdn.wall-pix.net/albums/art-space/00030109.jpg"; // your url
var targetPath = cordova.file.documentsDirectory + "testImage.png"; // filename
var trustHosts = true;
var options = {};
$scope.trans=function(){
$cordovaFileTransfer.download(url, targetPath, options, trustHosts)
.then(function(result) {
// Success!
}, function(err) {
// Error
}, function (progress) {
});
}
}]);