2013-09-23 80 views
1

我想用PrettyCheckable Plugin和KO & requireJS。Window.Ko是undefined

裏面的PrettyCheckable插件,window.ko是不確定的,因此檢查事件沒有得到觸發

if (window.ko) { 
    ko.utils.triggerEvent(input[0], 'click'); 
} 
else { 
    input.click(); 
} 

要求JS配置

var require = { 
    locale: 'en', 
    baseUrl: '/Scripts', 
    paths: { 
     "jquery": "lib/vendor/jquery/jquery-1.10.2.min", 
     "knockout": "lib/vendor/knockout/knockout-2.3.0", 
     "pretty-checkable": "Lib/Vendor/jQuery/Plugins/prettycheckable/prettycheckable" 
    }, 
    shim: { 

     "knockout": { 
      deps: ["jquery"], 
      exports: 'ko' 
     }, 
     "pretty-checkable": { 
      deps: ["jquery", "knockout"] 
     }, 
    }, 
    waitSeconds: 0 
}; 

任何幫助將高度讚賞

+0

格式化配置會讓人們更容易閱讀。 –

+0

實際使用的第一個代碼段在哪裏?如果你使用RequireJS,那麼你可能應該試圖避免使用全局變量('window.ko')。 –

回答

0

你需要第一個代碼片段在requirejs回調中運行,以便將knockout加載爲依賴項。你使用的是「window.ko」,只有在你使用require js加載時纔有效。