作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Meteor CollectionFS。目前我的文件上传是在客户端上执行的。我想在服务器上执行文件上传,以便其他平台(如 andriod 或 ios)可以使用我的文件上传服务。
目前这是我的代码:
client.html
<input type="file" custom-on-change="uploadFile">
app.controller('clientController', function ($scope, $meteor, $filter) {
$scope.uploadFile = function(event){
var files = event.target.files;
for (var i = 0, ln = files.length; i < ln; i++) {
files[i].userId = Meteor.userId();
Images.insert(files[i], function (err, fileObj) {
});
}
};
});
app.directive('customOnChange', function() {
return {
restrict: 'A',
link: function (scope, element, attrs) {
var onChangeHandler = scope.$eval(attrs.customOnChange);
element.bind('change', onChangeHandler);
}
};
});
Images = new FS.Collection("images", {
stores: [
new FS.Store.FileSystem("images", {path: '~/uploads'})
]
});
最佳答案
您可以将该逻辑放在 Meteor Method 中.
然后您可以决定是希望该方法仅在服务器上运行,还是同时在客户端和服务器上运行(延迟补偿)。
因此,我会将您的 Controller 更改为:
$scope.uploadFile = function(event){
Meteor.call("uploadFiles", event.target.files);
};
Images = new FS.Collection("images", {
stores: [
new FS.Store.FileSystem("images", {path: '~/uploads'})
]
});
Meteor.methods({
uploadFiles: function (files) {
for (var i = 0, ln = files.length; i < ln; i++) {
files[i].userId = Meteor.userId();
Images.insert(files[i], function (err, fileObj) {
});
}
}
});
关于angularjs - Meteor CollectionFS - 在服务器上上传图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34290323/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!