У меня есть интерфейсный SPA с использованием RequireJS
(2.1.14) в качестве модульной системы. Это в основном бутстрап и загрузка Backbone.Marionette
приложение.Как получить доступ к модулю node.js в среде RequireJS (AMD)?
В main.js
:
require.config ({
baseUrl: '/js',
waitSeconds: 200,
nodeRequire: require,
paths: {
jquery: '//cdn/jquery.min',
underscore:'//cdn/underscore-min',
// more plugins
},
shim: {
// shimming stuff
}
});
require(['marionette',
'vent',
'config/template',
'app',
'routers/main'
],
function (Marionette,
vent,
Template,
nrtApp
) {
'use strict';
nrtApp.module ('Public.Main', function (Main, nrtApp, Backbone,Marionette, $, _) {
nrtApp.start();
// this is where the error is:
requirejs (['config'], function (config) {
if (typeof config !== 'undefined') {config.log ('ok!');}
});
});
});
вопрос, я хотел бы загрузить некоторые npm
пакетов (например НОЙ установку конфигурации) от RequireJS
модуля. RequireJS
не может найти npm node_modules
каталог, который находится в разных каталогах, чем RequireJS baseUrl
.
Ниже моя структура каталогов:
my_project/
app/
public/
js/
main.js
app.js
node_modules/
config/
Ниже сообщение об ошибке:
Он пытался загрузить модуль из каталога BaseUrl.
Как я могу получить доступ к модулю npm из модуля модулей RequireJS в моем случае использования?
От клиента вы можете получить доступ только к общей папке. Что такое config в node_modules? Если этот модуль также работает с клиентом, тогда вам нужно будет его скопировать в public/js, чтобы использовать его. – Molda
@Molda config - модуль npm. Да, я бы хотел использовать config в клиентском приложении. –