Использование Fetch для получения настройки страницыHtml

Программисты Html
Ответить
Anonymous
 Использование Fetch для получения настройки страницы

Сообщение Anonymous »

Я очень не решаюсь задать этот вопрос. Есть много ответов по моему вопросу, но они не имеют дело с тегом и обычным HTML и JavaScript. Итак, здесь идет ... < /p>
Вот минимальное воспроизведение моего сценария. (Мой реальный сценарий включает в себя минимизированные сторонние сценарии, которые выходят далеко за рамки моего навыка или понимания, но требуют конфигурации.)
index.html < Br />

Код: Выделить всё



Test App




Test Text


setup-configuration.js

Код: Выделить всё

config = 'Not Set Yet';

fetch('config.json')
.then(response => response.json())
.then(json => config = json)
.catch( error => console.error('error:', error) );
do-something.js

Код: Выделить всё

console.log(config)
config.json

Код: Выделить всё

{
"SomeSetting": "SomeValue"
}
Проблема здесь заключается в том, что вызов to console.log (config) использует переменную config до ее настройки. Это (конечно), потому что вызов Fetch использует обещание и является асинхронным. Обычно я просто поместил зависимый код как часть цепочки обещаний. Но мне в основном нужно все мое приложение, чтобы ждать этого сценария, чтобы получить код конфигурации. (Сценарий do-somting.js на самом деле представляет собой несколько очень сложных сторонних сценариев, которые у меня не было бы шансов изменить работу в одном файле.)
Я первоначально использовал Synchronous xmlhttprequest звонок, но я хромированные инструменты отладки предупреждали, что я делаю это неправильно и что он будет удален из будущих версий Javascript. Интересно, как значения из одного тега могут использоваться в другом теге при получении с помощью Fetch. Есть ли способ для цепочки обещаний между тегами?

Подробнее здесь: https://stackoverflow.com/questions/664 ... e-settings
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Html»