我想要做的是使用data-bind屬性加載js。我對requirejs和淘汰賽相當陌生,我不確定如何出去。使用data-bind(knockout.js)加載requirejs模塊?
現在我有我的js拆分成不同的需求模塊,用於每種類型的組件。例如,我有一個與頭部下拉交易文件(header.js):
define('headerDropdown',['jquery', 'bootstrap']),function(jquery, bootstrap){
var $menu = $(".menu");
var $dropdown = $menu.find("ul");
$menu.on("click", function() {
$dropdown.toggle("fast");
});
};
我想要做的是:
<div class="header" data-bind="headerDropdown">...</div>
並加載相應的JS。
我的js模塊大部分都是基於點擊的UI變化(點擊時顯示並隱藏東西),但我只希望js加載的是html頁面在頁面上。
希望這是有道理的!
如何使用requirejs和knockout來做到這一點?
這個問題的答案太大了。你的RequireJS模塊不返回任何東西,它必須返回一個對象或值。對於'data-bind =「單擊:headerDropDown」'這非常簡單:在您的viewModel中創建headerDropDown方法。你真的想'data-bind =「headerDropdown」'?然後你需要自定義綁定。 – Tyblitz