2014-09-23 156 views
-1

我已經構建了一個Marionette/Requirejs應用程序,並試圖對其進行優化。一旦在瀏覽器中編譯和測試,我會收到錯誤「Backbone is not defined」。Grunt需求優化 - 骨幹未定義

編輯

,我讀了從要求項目使得mainConfigFile =我main.js文件解決了這些類型的問題,雖然當我嘗試添加和刪除從gruntfile我得到的所有的路徑信息一個grunt編譯錯誤,我的main.js文件不是有效的JSON。

末編輯

我的繼承人gruntfile.js requirejs配置:

requirejs: { 
     compile: { 
     options: { 
      baseUrl: "scripts", 
      paths: { 
       requireLib: 'lib/require', 
       templates: '../templates', 
       underscore: 'lib/underscore', 
       backbone: 'lib/backbone', 
       jquery: 'lib/jquery', 
       backbonevalidation: 'lib/backbone-validation', 
       marionette: 'lib/backbone.marionette', 
       json2: 'lib/json2', 
       text: 'lib/text', 
       errorlogger: 'lib/errorlogger', 
       moment: 'lib/moment.min', 
       glossary: 'lib/glossary', 
       facebook: '//connect.facebook.net/en_US/all', 
       "codebird": 'lib/codebird', 
       "cryptojs": 'lib/md5', 
       jquerySteps: 'lib/jquery.steps', 
       JQValidate: 'lib/jquery.validate.min', 
       numeral: 'lib/numeral', 
       async: 'lib/async', 
       homeloanAmort: 'lib/homeloanamortisation', 
       financial: 'lib/financial', 
       bonds: 'lib/finance/bonds', 
       common: 'lib/finance/common', 
       daycountbasis: 'lib/finance/daycountbasis', 
       depreciation: 'lib/finance/depreciation', 
       irr: 'lib/finance/irr', 
       loan: 'lib/finance/loan', 
       misc: 'lib/finance/misc', 
       oddbonds: 'lib/finance/oddbonds', 
       tbill: 'lib/finance/tbill', 
       tvm: 'lib/finance/tvm', 
       retirementneeds: 'lib/retirementneeds', 
       numeral: 'lib/numeral', 
       carloanamortisation: 'lib/carloanamortisation', 
       carleasebuy: 'lib/carleasevsbuy', 
       cookie: 'lib/jquery.cookie', 
       homerentvsbuy: 'lib/homerentvsbuy', 
       "JQstorageapi": 'lib/jquery.storageapi.min', 
       regiontransitions: 'lib/region-transitions' 
      }, 

      shim : { 
       underscore: { 
        exports: '_' 
       }, 
       backbone: { 
        deps: ['underscore', 'jquery'], 
        exports: 'Backbone' 
       }, 
       backbonevalidation: { 
        deps: ['backbone'], 
        exports: 'Backbone' 
       }, 
       marionette: { 
        deps: ['jquery', 'underscore', 'backbone'], 
        exports: 'Marionette' 
       }, 
       errorlogger: { 
        deps: ['jquery'] 
       }, 
       numeral: { 
        exports: "numeral" 
       }, 
       jquerySteps: { 
        deps: ["jquery"], 
        exports: "Steps" 
       }, 
       JQValidate: { 
        deps: ["jquery"], 
        exports: "JQValidate" 
       }, 
       JQstorageapi: { 
        deps: ["jquery"], 
        exports: "JQstorageapi" 
       }, 
       facebook: { 
        exports: 'FB' 
       }, 
       cryptojs: { 
        exports: 'CryptoJS' 
       }, 
       financial: { 
        deps: ['bonds','common','daycountbasis','depreciation','irr','loan','misc','oddbonds','tbill','tvm'], 
        exports :'financial' 
       } 
      }, 

      baseUrl : "scripts", 
      name: "main", 
      out: "optimised/js/main.min.js", 
      removeCombined: true, 
      include: ["requireLib", 'main.js'], 
      out: "optimised/js/main.min.js", 
      findNestedDependencies: true 
     } 
     } 
    }, 

我要去什麼地方錯了,並與一些摸索我知道它已與沉做,路徑,並使用AMD模塊。任何方向將不勝感激。

回答