ノードを使用して1つのファイルに最適化しようとしている単純なrequirejsプロジェクトがあります。プロジェクトの構造はそうです。
| ___ index.html | ├───css │style.css │ └───スクリプト │main.js │ ├───lib │require.js │underscore.js │ └───モジュール module1.js module2.js module3.js
これが私のビルドファイルです
//build.js
({
baseUrl: "./SimpleRequireJsProject/scripts",
name:"main",
out:"main-built.js"
})
プロジェクトファイルの外部にr.jsとbuild.jsを使用します。ノードコンソールを使用してオプティマイザーを実行しました。
node r.js -o build.js
すべてがうまくいきます。出力main-built.jsが作成されます。しかし、私が交換すると
<script data-main="scripts/main" src="scripts/lib/require.js"></script>
と
<script data-main="scripts/main-built" src="scripts/lib/require.js"></script>
インデックスファイルを実行するとき。エラーはありませんが、出力はありません。私はそのようなコンソールメッセージを期待しています。元のデータで動作します-メインとしてメイン
//出力 メインスタート m1開始 m2が開始しました..m2からm3を開始します m3開始
プロジェクトが実行されず、エラーも発生しない理由を見つけるのを手伝ってください。:(
//main.js
define([
'lib/underscore',
'modules/module1',
'modules/module2'
],
function (_, Module1, Module2) {
console.log('main started');
var module1 = new Module1();
var module2 = new Module2();
module1.start();
module2.start();
});
//module1.js
define(['lib/underscore'],
function ( _) {
function Module1() {
this.start = function () {
console.log('m1 started');
};
}
return Module1;
});
//module2.js
define(['lib/underscore', 'modules/module3'],
function (_, Module3) {
function Module2() {
this.start = function () {
console.log('m2 started..starting m3 from m2');
var module3 = new Module3();
module3.start();
};
}
return Module2;
});
//module3
define([
'underscore'],
function (_) {
function Module3() {
this.start = function () {
console.log('m3 started');
};
}
return Module3;
});
//index.html
<!DOCTYPE html>
<html>
<head>
<link href="css/style.css" rel="stylesheet" type="text/css">
<title></title>
</head>
<body>
<div id="main"></div>
<script data-main="scripts/main-built" src="scripts/lib/require.js"></script>
</body>
</html>