शुरू नहीं करता है मेरे पास एक साधारण आवश्यकता है प्रोजेक्ट है कि मैं नोड का उपयोग करके एक फ़ाइल को अनुकूलित करने का प्रयास कर रहा हूं। परियोजना संरचना इस तरह है।RequJs Optimizer एक फ़ाइल को कम करता है लेकिन मुख्य निर्मित
|___index.html | ├───css │ style.css │ └───scripts │ main.js │ ├───lib │ require.js │ underscore.js │ └───modules 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
सबकुछ अच्छी तरह से काम करता है। आउटपुट मुख्य-निर्मित.जेएस बनाया जाता है। लेकिन जब मैं जब मैं सूचकांक फ़ाइल को चलाने के
<script data-main="scripts/main-built" src="scripts/lib/require.js"></script>
साथ
<script data-main="scripts/main" src="scripts/lib/require.js"></script>
बदलें। कोई त्रुटि नहीं है लेकिन कोई आउटपुट नहीं है। मैं कंसोल संदेशों की अपेक्षा कर रहा हूं। जो मुख्य
//output main started m1 started m2 started..starting m3 from m2 m3 started
कृपया के रूप में मूल डेटा-मुख्य के साथ काम करता है मुझे पता लगाना क्यों परियोजना नहीं चलता है और कोई त्रुटि है और साथ ही मदद करते हैं। मॉड्यूल का नाम निर्मित मुख्य :(
//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>
सही है, मैं तो बस एक ही समस्या है करने के लिए कहा गया है। लेकिन यह एक समस्या है, क्योंकि अगर आप फाइलनाम में फिंगरप्रिंटिंग (कैश बस्टिंग) जोड़ते हैं तो यह लोड नहीं होगा! –