Knockout.js 具有可观察到的与另一个具有敲除的内容相同的内容
我有一个名为Knockout.js 具有可观察到的与另一个具有敲除的内容相同的内容,knockout.js,Knockout.js,我有一个名为packing的可观察对象,它包含一系列属性。其中之一是一个名为同位素的可观测轨道 packing - description - type - ... - isotopes - name - weight 我想创建一个单独的可观察物,使其与同位素含量相同。这是动态的,因此无论何时从包装中添加/删除某些东西。同位素这也应该在mycopy中添加/删除 我已经试过了: var mycopy = ko.computed(function () { return p
packing
的可观察对象,它包含一系列属性。其中之一是一个名为同位素的可观测轨道
packing
- description
- type
- ...
- isotopes
- name
- weight
我想创建一个单独的可观察物,使其与同位素含量相同。这是动态的,因此无论何时从包装中添加/删除某些东西。同位素这也应该在mycopy
中添加/删除
我已经试过了:
var mycopy = ko.computed(function () { return packing.isotopes; });
但它不起作用<代码>mycopy
未定义
有什么想法吗
谢谢
更新
下面是我的代码:
define(function (require) {
...
var mycopy = ko.computed(function () { return packing.isotopes; });
var activate = function (routeData) {
var idTran = parseInt(routeData.idTran);
var idPack = parseInt(routeData.idPack);
var promise = (idPack == -1) ? // -1 --> create a new empty itinerary
ctxTransport.createPackingDetailTransport(idTran, packing) :
ctxTransport.getPackingById(idPack, packing);
return promise
.then(ctxTransport.getTransportById(idTran, transport))
.fail(somethingWrong);
function somethingWrong(error) {
var msg = 'Error retreiving data. ' + error.message;
logError(msg, error);
throw error;
}
}
var vm = {
activate: activate,
canDeactivate: canDeactivate,
resource: resource,
transport: transport,
packing: packing,
mycopy: mycopy,
...
};
}
计算出的可观察对象应该跟踪其他可观察对象,但您在其中没有任何可观察调用。似乎您永远都不需要计算
var mycopy = packing.isotopes;
理论上,这应该是可行的。但由于您尚未发布完整的代码,我只能断定您存在一些范围界定问题。因此,在计算的包装中
没有定义。。。请发布一个更简单的示例,其中也有打包定义!我更新了我的问题以向您显示我的代码。