Кто-либо использует Firefox XUL IDE? [закрытый]

Проблема в вашей renderPlaces функции. Ниже приведена упрощенная версия, чтобы было легче увидеть структуру.

renderPlaces = () => {
    this.state.places.map((place, i) => {
      if (place.type || place.type === "Recommended Places") {
          // When first selecting a location from the autocomplete search,
          // you execute this code
          return place.items.map((item, i) => (
              
                  {/* stuff to render a place */}
              
          ));
      }
      // When you select a filter, you hit this condition instead.
      return this.state.places.map((place, i) => (
          
              {/* stuff to render a place */}
          
       ));
    })
};

При первом выборе местоположения в this.state.places имеется одна запись с place.type «Рекомендуемых мест». Это place имеет массив items, который управляет рендерингом. Когда вы выбираете фильтр (например, «Рестораны»), places имеет несколько записей (10 в случае, который я видел), и ни одна из них не имеет type, поэтому он соответствует второму условию. Второй возврат выполняет вызов this.state.places.map, но вы все еще находитесь внутри внешнего вызова this.state.places.map, поэтому вы повторяете все места по одному разу для каждого места. Таким образом, дополнительные копии связаны не с количеством повторных рендеров, а с количеством мест. Если вы удалите второй this.state.places.map, как показано ниже, он будет работать нормально (по крайней мере, в этом аспекте).

renderPlaces = () => {
    this.state.places.map((place, i) => {
      if (place.type || place.type === "Recommended Places") {
          return place.items.map((item, i) => (
              
                  {/* stuff to render a place */}
              
          ));
      }
      return (
          
              {/* stuff to render a place */}
          
      );
    })
};

Edit nearby

14
задан Delan Azabani 28 May 2010 в 10:37
поделиться

6 ответов

Я использую Проводник XUL для того, чтобы сделать быстрые макеты вещей или проверить элементы, с которыми я не знаком. Это не WYSIWYG, но можно перетащить элементы.

4
ответ дан 1 December 2019 в 13:59
поделиться

Spket IDE не имеет никакого WYSIWIG также.

можно хотеть судить Дополнительного Разработчика в https://addons.mozilla.org/en-US/firefox/addon/7434, который является дополнением Firefox. Один снимок экрана на той странице иллюстрирует редактора XUL WYSIWIG. Можно отредактировать файл XUL с IDE Spket и загрузить его этим редактором для проверки заключительного эффекта.

2
ответ дан 1 December 2019 в 13:59
поделиться

Я думаю не WYSIWYG IDE, доступный для Xul, но существует Spket IDE, он может помочь Вам

0
ответ дан 1 December 2019 в 13:59
поделиться

Вы могли бы хотеть попробовать редактора макетов XUL Songbird. Я вспоминаю, что это очень завершено и просто в использовании, и это идет с большим количеством примеров каждого элемента XUL, вставленного в несколько сценариев расположения. Я полагаю, что Вам нужны ночная сборка или dev выпуск ее, который можно легко получить от веб-сайта.

Хорошая вещь состоит в том, что помимо редактора, это идет с некоторыми другими необычными и очень полезными инструментами разработчика XUL. И конечно, это - большая замена iTunes ;)

1
ответ дан 1 December 2019 в 13:59
поделиться

Я просто хотел отметить, что занимаюсь разработкой XUL с помощью ActiveState KomodoEdit . У него нет графического интерфейса WYSIWYG XUL, но он распознает файлы XUL и может дать вам подсказки по коду для пространства имен XUL, а также для соответствующих им файлов JS.

Обратите внимание, что Komodo также был написан на XUL. У меня это работает очень хорошо: -)

4
ответ дан 1 December 2019 в 13:59
поделиться

Существует один редактор Wysiwyg под названием XUL Gear

3
ответ дан 1 December 2019 в 13:59
поделиться