我想創建一個與中央服務提供程序交互的自定義組件應用程序,它工作正常。敲除綁定自定義組件與中央視圖模型不衝突
你可以看到在https://github.com/brianlmerritt/knockout-babel-browserify-gulp
一個例子這是寫在ES2015和編譯罰款。
問題是我希望能夠加載適用於每個頁面的中央視圖模型,當然除了具有它自己的視圖模型的組件。
我以爲我明白了http://www.knockmeout.net/2012/05/quick-tip-skip-binding.html,但是當我用<!-- ko stopBinding : true -->
環繞組件時,組件無法綁定。如果我不圍繞組件,那麼我會遇到綁定衝突。
如果有人可以指示我如何以中央視圖模型不衝突的方式註冊組件,我將非常感激!
每個自定義組件與註冊:
ko.components.register(
'component-one',
require('./components/component-one/component.js'));
爲了保證中央視圖模型簡單,我只是去:
var centralViewModel = function centralViewModel()
{ var bindingWorked = ko.observable(
'The binding worked. KO view model centralViewModel has a this context and was bound to the html correctly');
};
可悲的是,當我做了綁定他們的衝突:
ko.applyBindings(centralViewModel(),document.body);
ko.applyBindings(); // Pull in all of the components
我確定必須有一種方法可以將組件拉入不與ce相沖突的方式中心視圖模型。
爲什麼不第一'applyBindings'拉中的所有組件? –
它確實,但綁定衝突。我需要一種方法來告訴centralViewModel不要超越它的標記並且保持單獨的組件不變 – brianlmerritt
嗨@RoyJ - 問題不是中央和組件視圖模型之間的衝突 - 它是在centralViewModel中的代碼 – brianlmerritt