1
ko
(ノックアウト)に基づいて以下のモジュールを実装しました。 requirejsのdefineの外で変数にアクセスする方法
define(['ko'],
function(ko) {
function compareViewModel() {
var self = this;
self.products = ko.observableArray([]);
self.addProduct = function(p) {
self.products.push(p);
}
self.visible = ko.computed(function() {
return self.products().length > 0;
});
}
return { cvm: compareViewModel() };
});
私はdefine
$(function() {
//ACCESS CVM HERE
$('.compare-chk').click(function() {
var $chk = $(this).prev('input:checkbox');
if ($chk !== 'undefined') {
if (!$chk.is(':checked')) {
cvm.addProduct($chk.attr('value'));
console.log(cvm.products());
}
}
});
});
のcvm
外にアクセスできるようにしたいでも可能ということですか?
requirejs(['jquery', 'ko'], function($, ko){
$(function() {
//ACCESS CVM HERE
$('.compare-chk').click(function() {
var $chk = $(this).prev('input:checkbox');
if ($chk !== 'undefined') {
if (!$chk.is(':checked')) {
ko.cvm.addProduct($chk.attr('value'));
console.log(ko.cvm.products());
}
}
});
});
});
注配列内のモジュールやライブラリは、我々は最初の引数として渡すことそれはかなり可能です:ために
これはうまくいきました。ありがとうございました。 –
@AliKhakpouriよろしくお願いします。私が助けてくれてうれしいです。 – Christos