Я пытаюсь показать загруженные изображения людям, которые посещают приложение.Показать загруженные изображения с помощью коллекцииfs с помощью файловой системы
Я до сих пор не удалял пакеты insecured
или autopublish
из моего проекта.
У меня есть функция, как этот:
$scope.upload = (event) => {
var file = event; //assuming 1 file only
console.log(file);
if (!file) return;
Images.insert(file, function (err, fileObj) {
if (err) {
console.log(err);
} else {
console.log('success', fileObj);
}
});
}
, который сохраняет изображение в моей локальной машине
Images = new FS.Collection("images", {
stores: [new FS.Store.FileSystem("images", {path: "/home/user/uploadedimages"})]
});
в моей meteor mongo
консоли, когда я show.collections
я получаю cfs.images.filerecord
, который имеет следующие :
{
"_id" : "yqEzEH2us7SZveDm2",
"original" : {
"name" : "Screenshot from 2016-05-11 14:38:59.png",
"updatedAt" : ISODate("2016-05-11T18:38:59.636Z"),
"size" : 607292,
"type" : "image/png"
},
"uploadedAt" : ISODate("2016-05-15T03:04:40.447Z"),
"copies" : {
"images" : {
"name" : "Screenshot from 2016-05-11 14:38:59.png",
"type" : "image/png",
"size" : 607292,
"key" : "images-yqEzEH2us7SZveDm2-Screenshot from 2016-05-11 14:38:59.png",
"updatedAt" : ISODate("2016-05-15T03:04:40Z"),
"createdAt" : ISODate("2016-05-15T03:04:40Z")
}
}
}
ВОПРОС
Как отобразить загруженные изображения клиенту.
Я читал, что вы делаете что-то вроде
<div ng-repeat="image in images">
<img ng-src="{{image.url}}" width="400px" alt="">
</div>
Но это не делает изображение или показывает что-либо вообще. Я знаю, что вижу массив без подписки, потому что я все еще не удалял пакет autopublish
от метеор.
Я не знаком с угловыми. но не было бы никаких скобок или что-то, что бы сделать «образ в изображениях» переменным циклом? Я парень Blaze & React. простите меня, если это звучит noob. –
угловая часть верна, насколько я могу судить. – MrE
вопрос, где вы загружаете? Метеор будет обслуживать общедоступный контент в общей папке, поэтому, если вы загружаете рис в этой папке и ссылаетесь на правильный URL-адрес в теге img, он отображает изображение при обновлении URL-адреса. Теперь вы, вероятно, рассмотрите еще одну типичную проблему в режиме dev, которая заключается в том, что перезагрузка горячего кода в триггерах Meteor, когда что-то меняется в общей папке, так что ваше приложение будет перезагружаться при загрузке изображения. Трюк, который мне пришлось использовать, - это загрузить в другую папку и написать маршрут к серверным файлам из этой папки. – MrE