モジュールシステムにRequireJS
(2.1.14)を使用しているフロントエンドSPAがあります。基本的にブートストラップし、Backbone.Marionette
アプリをロードします。 main.js
でRequireJS(AMD)環境でnode.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
パッケージをロードしたいと思います(例えば、NPM設定をインストール)RequireJS
モジュールから。 RequireJS
RequireJS baseUrl
ディレクトリと異なるディレクトリに座っているnpm node_modules
ディレクトリを見つけることができません。
以下は私のディレクトリ構造です:
my_project/
app/
public/
js/
main.js
app.js
node_modules/
config/
以下はエラーメッセージです:それはbaseUrlにディレクトリからモジュールをロードしようとした
。
私のユースケースでRequireJSモジュールシステムからnpmモジュールにアクセスするにはどうすればよいですか?
クライアントからは、パブリックフォルダにしかアクセスできません。 node_modulesには何が設定されていますか?そのモジュールがクライアント上でも動作している場合は、それをpublic/jsにコピーして使用する必要があります。 – Molda
@Molda configはnpmモジュールです。はい、私は同様にクライアントアプリケーションで設定を使用したいと思います。 –