Разрешить пользователю выбирать фотографию из галереи

Перебрав ЛЮБОЙ вариант, я не могу найти решение простой проблемы:

Предоставление пользователю возможности выбрать фотографию из большой галереи и сохранить ее в коллекцию. Как и в средстве выбора изображений, вы выбираете изображение из галереи, и окно закрывается.

  1. Нет опции выбора фото в меню "user input".
  2. Невозможно подключить какую-либо галерею, включая галерею Wix, к набору данных как INPUT.
  3. Третьи приложения позволяют вам это делать, но они сохраняются на их собственных серверах и ограничены всего несколькими фотографиями, а не большим набором.

По сути, у нас есть более 100 фотографий в альбоме, которые пользователь должен каким-то образом выбрать.

Другой вариант — открыть какое-то окно с потоком Pinterest и собрать URL-адрес подборки, что также кажется невозможным.


person Curnelious    schedule 09.07.2018    source источник


Ответы (1)


Встроенного средства выбора изображений нет, но вы можете создать свое собственное с помощью небольшого количества кода.

Вот немного кода, который должен помочь вам начать работу в правильном направлении:

import wixData from 'wix-data';
import wixUsers from 'wix-users';

$w.onReady(function () {
  $w('#gallery').clickAction = "none";

  $w("#gallery").onItemClicked( (event) => {
    let imageSrc = event.item.src; 

    let toInsert = {
      "user": wixUsers.currentUser.id,
      "image": imageSrc
    }

    wixData.insert("SelectedImages", toInsert)
      .then( () => {
        $w('#gallery').hide("fold");
      } );
  } );
} );

Этот код предполагает, что у вас есть коллекция, в которой вы хотите хранить «выбранные» изображения. В этой коллекции есть как минимум два поля со следующими ключами: user и image.

При щелчке изображения в галерее обработчик событий получает src изображения и вставляет его в коллекцию вместе с идентификатором текущего пользователя. Тогда галерея скрыта.

Все вышеперечисленное можно настроить в соответствии с вашей конкретной ситуацией, но это должно дать вам представление о том, что можно сделать.

person Sam    schedule 10.07.2018