Redux: разделить регулярное выражение между back и front-end - PullRequest
0 голосов
/ 02 июля 2018

Мне нужно поделиться некоторыми статическими данными между моим приложением rails и внешним интерфейсом на основе Redux. Примером в этом случае является регулярное выражение, используемое вспомогательным методом в js, а также в контроллере в приложении rails.

Мне кажется, раздражает необходимость добавлять что-то подобное в хранилище с избыточностью, поскольку к хранилищу нелегко подключиться из независимых вспомогательных файлов в js. Вместо этого вам нужно будет захватить его в mapStateToProps, передать его в качестве реквизита в презентационный компонент, который затем отправит его в действие, чтобы можно было отправить код, который обрабатывает действия (либо в mapDispatchToProps, либо в редукторе). это как параметр при использовании вспомогательного метода.

Похоже, много ненужных раздумий за то, что никогда не меняется. Существуют ли какие-либо стандарты для статических данных, предоставляемых сервером для использования во внешнем интерфейсе? Может быть, что-то добавить к объекту окна?

1 Ответ

0 голосов
/ 02 июля 2018

Если это то, что действительно никогда не меняется, вот несколько идей:

  • Иметь конечную точку конфигурации, где вы можете получить регулярное выражение и перейти в состояние избыточности
  • Статический конфигурационный файл, которым может поделиться JS / Ruby код
  • Жесткое кодирование регулярного выражения непосредственно в исходное состояние редуктора
  • Создайте файл JavaScript и жестко закодируйте регулярное выражение непосредственно в этом файле. Возможно, поместите его в файл, указывающий, что он используется совместно с сервером.
  • Использование объекта окна заставит всех серьезных разработчиков реагировать немного. В конечном итоге это значение может измениться, и оно будет вызывать ошибки во всем приложении. Если вы уверены, что сделаете эту игру, то сделайте это. Использование объекта окна также может усложнить тестирование.
...