Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Как настроить редактор сценариев для разрешения путей модулей AMD

Автор вопроса: PhilippeОтветов: 1

Я пытаюсь использовать scripted, но не могу понять, как сообщить редактору, где находятся мои модули AMD. Модули, относящиеся к редактируемому в данный момент файлу, кажется, разрешаются нормально, но когда я редактирую файл из пакета, который имеет зависимости от другого пакета, редактор просто не может их найти:

У меня есть проект dojo с такой структурой: - web - index.php - js/src - dojo - dijit - dojox - mymodule - myWidget.js

И скажем, если я поставлю "dojo/dom" в качестве зависимости от myWidget.js, редактор жалуется, что не находит модуль dojo/dom.

Есть идеи ?

Спасибо.

Филипп

dependenciesamdspringsource

Ответы

Ответ 1 · Kris

Scripted попытается "обнаружить" вашу конфигурацию AMD, просматривая html-файлы, используя некоторые шаблоны.

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

Это, скорее всего, то, что происходит с вашим проектом.

Не могли бы вы предоставить более подробную информацию о структуре вашего проекта?

В частности, Scripted начнет свое обнаружение с html-файла, который загружает requirejs. Поэтому, чтобы предоставить более конкретную информацию о том, почему он не работает в вашем проекте, нам нужно знать, где этот html-файл находится в вашем проекте и как он загружает requirejs и настраивает его.

Если вы хотите увидеть несколько примеров структур, которые работают. Некоторые из них есть в тестовых ресурсах Scripted code-base. Например, вот очень простой.

https://github.com/scripted-editor/scripted/tree/master/tests/server/test-resources/nested-web-with-scripts-folder/web-app

У него есть html-файл с именем "page.html", который загружает скрипт "main.js" через атрибут "datamain" в теге скрипта.

Если ваш проект выглядит так, он должен работать, если нет - это ошибка. Если это выглядит иначе, то трудно сказать больше, не зная, как вы используете requirejs в своем проекте.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы