Почему моя глобальная переменная requirejs не определена?

У меня есть два отдельных приложения. Оба используют jQuery и RequireJS. Я хочу встроить приложение A в приложение B, поэтому я передаю необходимый HTML в приложение B. Приложение B является экземпляром edx-платформы (https://github.com/edx/edx-platform).

Пока все хорошо, но второе приложение не загружается. Сначала у меня были оба тега script с data-main, но это не работает. Итак, я искал и нашел это: https://stackoverflow.com/a/10839885

Пока я выгляжу хорошо, но моя глобальная переменная requirejs не определена. В HTML-платформе edx вызывается RequireJS с помощью этого кода:

<script>
    window.baseUrl = "/static/";
    (function (require) {
        require.config({
            baseUrl: window.baseUrl
        });
    }).call(this, require || RequireJS.require);
</script>
<script type="text/javascript" src="/static/lms/js/require-config.js"></script>
<script type="text/javascript">
    (function (require) {
        require.config({
            paths: {
                'js/courseware/courseware_factory': 'js/courseware/courseware_factory',
                'draggabilly': 'js/vendor/draggabilly',
                'js/courseware/toggle_element_visibility': 'js/courseware/toggle_element_visibility',
                'js/courseware/course_home_events': 'js/courseware/course_home_events',
                'js/courseware/link_clicked_events': 'js/courseware/link_clicked_events',
                'moment': 'common/js/vendor/moment-with-locales',
                'moment-timezone': 'common/js/vendor/moment-timezone-with-data',
                'js/student_account/logistration_factory': 'js/student_account/logistration_factory',
                'js/groups/views/cohorts_dashboard_factory': 'js/groups/views/cohorts_dashboard_factory',
                'js/dateutil_factory': 'js/dateutil_factory',
                'js/courseware/accordion_events': 'js/courseware/accordion_events',
                'js/bookmarks/views/bookmark_button': 'js/bookmarks/views/bookmark_button',
                'js/views/message_banner': 'js/views/message_banner',
                'js/student_profile/views/learner_profile_factory': 'js/student_profile/views/learner_profile_factory'
            }
        });
    }).call(this, require || RequireJS.require);
</script>

Мой код включен позже. Я попытался запустить простой console.log(requirejs), но это не сработало. requirejs также не определен при вызове из консоли разработчика.


person Community    schedule 27.03.2017    source источник


Ответы (1)


ОК, я узнал, почему это не определено. edX также загружает файл, который не определяет все эти переменные.

Теперь мне нужно найти способ запустить мой код.

person Community    schedule 27.03.2017