2012-07-06 6 views
6

मैं टेम्पलेट फ़ाइलों के लिए .jst एक्सटेंशन का उपयोग करता हूं, और आवश्यकताएँ टेक्स्ट के साथ लोड करता हूं! लगाना। उदा।,.jj टेम्पलेट फ़ाइलों के साथ लोड किए गए .jst टेम्पलेट फ़ाइलों को '.js' जोड़ने की आवश्यकता क्यों है?

define([ 
    'jquery', 
    'backbone', 
    'underscore', 
    'text!templates/MyView.jst' 
], 
function($, Backbone, _, templateText) { 
    return Backbone.View.extend({ 
    template: _.template(templateText), 
    initialize: function() { 

    }, 
    render: function() { 
    } 
    }); 
}); 

जब मैं स्थानीय रूप से परीक्षण करता हूं तो यह सूख जाता है। हालांकि, जब मैं अपनी स्थिर फाइलों को एडब्ल्यूएस (ऐपोकू पर चलाने वाले ऐप के गतिशील भाग) पर तैनात करने के बाद ऐसा करने की कोशिश करता हूं, तो यह .jst फ़ाइलों को लोड करने में विफल रहता है और ऐसा लगता है कि उनके लिए .js को जोड़ने की कोशिश की जा रही है यूआरएल की।

संदर्भ के लिए, (main.js से) मेरी requirejs config

requirejs.config({ 
    paths: { 
    //directories 
    plugins: "lib/plugins", 

    //libs 
    jquery: "lib/jquery/1.7.1/jquery", 
    underscore: "lib/underscore/1.3.3/underscore", 
    backbone: "lib/backbone/0.9.2/backbone", 
    moment: "lib/moment", // date lib 

    //require plugins 
    text: "lib/require/plugins/text", 
    domReady: "lib/require/plugins/domReady" 
    }, 
    shim: { //specify all non-AMD javascript files here. 
    backbone: { 
     deps: ['underscore', 'jquery'], 
     exports: 'Backbone' 
    }, 
    underscore: { 
     exports: '_' 
    }, 
    moment: { 
     exports: 'moment' 
    }, 
    'plugins/jquery.colorbox': ['jquery'], 
    'util/jquery.dropTree':['jquery'], 
    'util/common':['jquery'] 
    } 
}); 
+0

require.js प्रलेखन यहाँ को देखते हुए: http://requirejs.org/docs/api.html#config-baseUrl जैसे कि यह एक क्रॉस-डोमेन मुद्दा हो सकता है इसकी तलाश में। क्या कोई यह पुष्टि कर सकता है कि यह मामला है? (अगर यह निश्चित रूप से है तो इसे उत्तर के रूप में लेने में संकोच न करें)। यदि यह मामला है, तो इसे संभालने का यह एक अस्पष्ट तरीका है। मैं शुरुआत में हालांकि टेम्पलेट्स को केवल जेएस फाइलों के समान डोमेन पर होना था, लेकिन ऐसा लगता है कि पृष्ठ के समान डोमेन पर होना चाहिए। ऐसा लगता है कि इससे पहले कि मैं इसे काम पर ला सकूं, मुझे अगले चरण (आरजेजे ऑप्टिमाइज़र के माध्यम से सब कुछ चलाना) के विकास के साथ आगे बढ़ना पड़ सकता है। –

उत्तर

9

मैं सिर्फ जानकारी है कि इस मुद्दे को बताते हैं के साथ text.js README अद्यतन है। यह मूल रूप से डोमेन पर टेक्स्ट संसाधनों का उपयोग करने का एक तरीका है, लेकिन इसे एक निर्माण की आवश्यकता है। ओवरराइड करने का एक तरीका है। यहाँ विवरण:

https://github.com/requirejs/text#xhr-restrictions

+0

प्रतिक्रिया के लिए धन्यवाद, और आपके द्वारा Requre.js, jrburke में डाली गई सभी चीज़ों के लिए धन्यवाद। यह विस्मयकारी है। –