Опции для распределения офлайнового приложения Ruby on Rails

Создайте третий массив (возможно, activeList.) Затем просто нажмите кнопку, нажав кнопку, которая копирует items или items2 в activeList. Наконец, замените все ссылки на items в методе рендеринга на activeList. Вот сокращенный код:

class ItemList extends React.Component {
  state = {
...
    items: [],
    items2: [],
    activelist: [],
  };

  componentDidMount() {
    dataPromise.then(
      result => {
        this.setState({
          isLoaded: true,
          items: result,
          activelist: result
        });
      },
...
    );

    dataPromise2.then(
      result2 => {
        this.setState({
          isLoaded: true,
          items2: result2
        });
      },
...
    );
  }

  constructor(props) {
    super(props);
...
    this.Active1 = this.Active1.bind(this); // ADDED
    this.Active2 = this.Active2.bind(this); // ADDED
  }
...
  Active1() {
    this.setState({ activelist: Object.assign({}, this.state.items) }); //CHANGED
  }

  Active2() {
    this.setState({ activelist: Object.assign({}, this.state.items2) }); //CHANGED
  }

  render() {
...
      return (
        
... ); } } }

Вот код и окно: https://codesandbox.io/s/jn6vp0qx4y?fontsize=14

18
задан Brent 11 September 2008 в 02:40
поделиться

7 ответов

Я никогда не должен был лично делать этого. Но, я имею, натыкался на это учебное руководство http://www.erikveen.dds.nl/distributingrubyapplications/rails.html , что я думаю, будет полезно. Учебное руководство касается, как на самом деле преобразовать приложение для направляющих в автономный EXE-файл.

7
ответ дан 30 November 2019 в 09:19
поделиться

Примечание, Рогатка, кажется, мертвый проект (см. комментарии). Я оставлю этот ответ здесь в исторических целях и ничтожном шансе, что он возвращается

Joyent , Рогатка могла бы быть хорошей ставкой.

Рогатка Joyent позволяет разработчикам развертывать приложения направляющих как стандартное настольное приложение, которые работают онлайн и офлайн (с синхронизацией), имеют перетаскивание и взаимодействуют со всеми другими настольными приложениями.

С Рогаткой Joyent:

  • Создают гибридную сеть/настольное приложение
  • , Синхронизируются и офлайновые данные, онлайн
  • Используют тот же код для и офлайнового приложения (приложений)
  • онлайн, Развертывают и обновляют Ваше приложение легко
  • , Перетаскивают в, и из приложения

Вот некоторые дальнейшие ссылки, чтобы помочь с Вашей оценкой и/или помочь Вам начать:

3
ответ дан 30 November 2019 в 09:19
поделиться

Путем большинство людей поставляет рубиновые программы, включая веб-приложения направляющих, как автономный exe через rubyscript2exe. Они описывают, как упаковать приложение направляющих в http://www.erikveen.dds.nl/distributingrubyapplications/rails.html . Ruby, направляющие и все связанные библиотеки будут включены в EXE-файл.

, Поскольку другие упомянули, Ruby является не обязательно направляющими и если Вы действительно хотите простой способ записать распространяемое приложение GUI в Ruby, , Обувь является превосходным местом, чтобы начать смотреть.

2
ответ дан 30 November 2019 в 09:19
поделиться

Вы могли всегда полагать, что компиляция Вашего Ruby к байт-коду JVM (через JRuby) или байт-коду.NET (через IronRuby) распределила людям, которые имеют те виртуальные машины и не хотят устанавливать время выполнения Ruby.

Вы могли бы хотеть проверить Обувь для того, чтобы создать настольные приложения в Ruby. Направляющие действительно настраиваются для создания веб-сайтов.

1
ответ дан 30 November 2019 в 09:19
поделиться
1
ответ дан 30 November 2019 в 09:19
поделиться

Можно включать Ruby on Rails путем замораживания его к версии направляющих, которые Вы хотите использовать в своем проекте. Они называют это Замораживание. Пользователь не должен будет устанавливать направляющие для использования приложения. Можно сделать это с любой библиотекой, которой Вы пользуетесь в своем проекте. Если проект пользуется библиотекой, просто поместите его под папкой Vendor в Вашем проекте. Затем используйте инструмент, подобный какой @Josh, которому отвечают с упаковать его.

Вам будет нужен веб-сервер для выполнения проекта все же. Нет никакого пути вокруг этого. Ruby on Rails точно так же, как ASP.NET в этом отношении, в котором это - серверная платформа. Сервер выполняет код и производит HTML к браузеру при помощи Инфраструктуры Rails.

, К сожалению, Вы, возможно, выбрали неправильную платформу, чтобы сделать то, что Вы хотите. Вместо Ruby on Rails можно хотеть проверить Обувь , который является платформой для разработки приложений GUI с помощью Ruby.

1
ответ дан 30 November 2019 в 09:19
поделиться

Вы конкретно не говорите, как ли это, предполагается, приложение GUI или нет. Из других ответов я был бы думаю так.

Поэтому необходимо разъяснить, каковы цели. RoR является специализированной платформой для веб-приложений. Если бы Ваша цель состоит в том, чтобы изучить RoR, я сказал бы, чтобы вовлечь себя некоторый недорогой веб-хостинг и сделать себя приложением. Если Ваша цель состоит в том, чтобы изучить Ruby, не обязательно направляющие, то Обувь, IronRuby, JRuby, MacRuby и другие могут быть хорошими вариантами посмотреть на.

0
ответ дан 30 November 2019 в 09:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: