Angularjs 如何用angular js上传照片?

Angularjs 如何用angular js上传照片?,angularjs,Angularjs,我正在尝试用angular进行上传。我正在使用这个plunkr 如果我想将照片上载到包含project的文件夹中,我应该在此处写些什么: element.fileupload({ dataType: 'json', url: './api', done: function(e, data) { $log.log("done accessed"); },

我正在尝试用angular进行上传。我正在使用这个plunkr

如果我想将照片上载到包含project的文件夹中,我应该在此处写些什么:

element.fileupload({
              dataType: 'json',
              url: './api',
              done: function(e, data) {
                $log.log("done accessed");
              },
              fail: function(e, data) {
                $log.log("fail accessed");
              },
              progress: function(e, data) {
                options.progress = parseInt(data.loaded / data.total * 100, 10);
                scope.$apply();
                $log.log(options)
                $log.log("progress");
              },
              //add: function(e,data){
              //$log.log("add accessed");
              //},
              submit: function(e, data) {
                $log.log("notetext:", options.notetext);
                data.formData = {
                  Description: options.notetext
                };
                $log.log("submit accessed");
              }
            });

最简单的方法是使用HTML5 API,即
FileReader
JSFIDLE:

HTML非常简单:

<input type="file" id="file" name="file"/>
<button ng-click="add()">Add</button>
浏览器兼容性

桌面浏览器

Firefox(Gecko)3.6(1.9.2)、Chrome7、互联网 Explorer*10、Opera*12.02、Safari 6.0.2

移动浏览器

Firefox(Gecko)32, 铬3, Internet Explorer*10, 歌剧*11.5, Safari 6.1

注意:readAsBinaryString()方法已弃用,应改为使用


乐于助人

是的,但是你能帮我让这个例子起作用吗?@CarmenMitru你必须告诉我们你让这个例子起作用是什么意思。这是您需要的完整代码;您只需将自己的钩子添加到服务器端调用,该调用接受帖子并正在侦听此文件。我问我应该在url上写什么。在示例中,他们说url:“//jquery file upload.appspot.com/”。为了在项目文件夹中上载文件,我应该写什么。我应该写url:“。/”,@卡门米特鲁如果你需要婴儿步骤来学习,请点击以下链接:这是一个很好的视频教程:我再问你一次,也许你不明白!我应该在url上写些什么才能把文件上传到我的文件夹中。我试过这个“/”但它说无法访问
$scope.add = function(){
  var f = document.getElementById('file').files[0],
      r = new FileReader();
  r.onloadend = function(e){
    var data = e.target.result;
    //send you binary data via $http or $resource or do anything else with it
  }
  r.readAsBinaryString(f);
}