У нас есть приложение Rails с реакцией в качестве интерфейсной среды. Мне нужно сохранить некоторое значение хеш-функции в переменной javascript, например
windows.FeatureFlag = {featureA: true, featureB:false}
перед загрузкой всех файлов... мы загружаем файл js в следующем порядке
//= require jquery
//= require jquery_ujs
//= require jquery-ui
//= require react-server
//= require react_ujs
//= require_tree .
Я пытаюсь установить вышеупомянутый FeatureFlag до того, как будет загружен реагирующий файл... Я попытался добавить DOMContentLoaded
но все же переменная определена как неопределенная..
Я реагирую файл, который нам требуется/установить несколько различных значений, и все зависят от этой переменной, чтобы избежать нескольких обращений к серверу...
как добиться?
Ответ Джареда будет работать, но он добавляет еще один запрос для клиента, не обрабатывается заранее, должен быть включен во все макеты. Я мог бы:
Создайте новый файл для скрипта... назовите его response_config.js
windows.FeatureFlag = {featureA: true, featureB:false}
затем:
//= require jquery
//= require jquery_ujs
//= require jquery-ui
//= require react_config.js
//= require react-server
//= require react_ujs
//= require_tree .
application.js уже включен в
Поместите это в верхнюю часть документа <head>
<head>
<script>
window.featureFlags = {featureA: true, featureB:false};
</script>
<!-- now load everything else -->
</head>
Обычно <head>
находится в app/views/layouts/application
.
Вы также можете найти content_for
полезным.