使用 AWS 设置覆盖工厂时出现 OpenEDX RequireJS 错误
OpenEDX RequireJS error when overriding factory with AWS setting
我在部署到服务器而不是 devstack 时遇到 OpenEDX 问题。在 devstack 上,覆盖工作完美,尽管在 dev 上无法加载。
我正在覆盖 student_account/account_settings.html
以及 student_account/views/account_settings_factory.js
和 student_account/views/account_settings_view.js
。
加载 LMS 的帐户部分时,在生产环境中会产生以下错误,但在开发环境中不会:
Mismatched anonymous define() module: function(gettext, $, _, Backbone, Logger, UserAccountModel, UserPreferencesModel,
AccountSettingsFieldViews, AccountSettingsView, StringUtils) {
return function(
fieldsData,
ordersHistoryData,
authData,
passwordResetSupportUrl,
userAccountsApiUrl,
userPreferencesApiUrl,
accountUserId,
platformName,
contactEmail,
allowEmailChange
) {
var accountSettingsElement, userAccountModel, userPreferencesModel, aboutSectionsData,
accountsSectionData, ordersSectionData, accountSettingsView, showAccountSettingsPage,
showLoadingError, orderNumber, getUserField, userFields, countryDropdownField, emailFieldView;
accountSettingsElement = $('.wrapper-account-settings');
userAccountModel = new UserAccountModel();
userAccountModel.…
我工厂中的定义如下所示:
(function(define, undefined) {
'use strict';
define([
'gettext', 'jquery', 'underscore', 'backbone', 'logger',
'js/student_account/models/user_account_model',
'js/student_account/models/user_preferences_model',
'js/student_account/views/account_settings_fields',
'academy/js/student_account/views/account_settings_view',
'edx-ui-toolkit/js/utils/string-utils'
], function(gettext, $, _, Backbone, Logger, UserAccountModel, UserPreferencesModel,
AccountSettingsFieldViews, AccountSettingsView, StringUtils) {
如前所述,在开发中完美运行,但在生产中抛出错误。希望有人知道这个问题的解决方案。
问题是因为在 AWS 摊铺机设置中,出于某种原因,自定义工厂需要进行优化,这可以通过覆盖 lms 的 build.js 文件来完成。这个问题在文档中的任何地方都不是很清楚,因此很难得出这个结论。
我在部署到服务器而不是 devstack 时遇到 OpenEDX 问题。在 devstack 上,覆盖工作完美,尽管在 dev 上无法加载。
我正在覆盖 student_account/account_settings.html
以及 student_account/views/account_settings_factory.js
和 student_account/views/account_settings_view.js
。
加载 LMS 的帐户部分时,在生产环境中会产生以下错误,但在开发环境中不会:
Mismatched anonymous define() module: function(gettext, $, _, Backbone, Logger, UserAccountModel, UserPreferencesModel,
AccountSettingsFieldViews, AccountSettingsView, StringUtils) {
return function(
fieldsData,
ordersHistoryData,
authData,
passwordResetSupportUrl,
userAccountsApiUrl,
userPreferencesApiUrl,
accountUserId,
platformName,
contactEmail,
allowEmailChange
) {
var accountSettingsElement, userAccountModel, userPreferencesModel, aboutSectionsData,
accountsSectionData, ordersSectionData, accountSettingsView, showAccountSettingsPage,
showLoadingError, orderNumber, getUserField, userFields, countryDropdownField, emailFieldView;
accountSettingsElement = $('.wrapper-account-settings');
userAccountModel = new UserAccountModel();
userAccountModel.…
我工厂中的定义如下所示:
(function(define, undefined) {
'use strict';
define([
'gettext', 'jquery', 'underscore', 'backbone', 'logger',
'js/student_account/models/user_account_model',
'js/student_account/models/user_preferences_model',
'js/student_account/views/account_settings_fields',
'academy/js/student_account/views/account_settings_view',
'edx-ui-toolkit/js/utils/string-utils'
], function(gettext, $, _, Backbone, Logger, UserAccountModel, UserPreferencesModel,
AccountSettingsFieldViews, AccountSettingsView, StringUtils) {
如前所述,在开发中完美运行,但在生产中抛出错误。希望有人知道这个问题的解决方案。
问题是因为在 AWS 摊铺机设置中,出于某种原因,自定义工厂需要进行优化,这可以通过覆盖 lms 的 build.js 文件来完成。这个问题在文档中的任何地方都不是很清楚,因此很难得出这个结论。