gpt4 book ai didi

javascript - Breeze 和 Knockout 绑定(bind)不正确

转载 作者:行者123 更新时间:2023-11-29 22:08:48 24 4
gpt4 key购买 nike

我正在尝试使用 breeze 和 knockout 的示例

manager.executeQuery(query).then(function(result){
console.log(result);
ko.applyBindings(result);
}).fail(function(e) {
console.log(e);
alert(e);
});

在控制台打印时。我在路径 data.XHR.result.responseJSON 中得到两个对象,在 data.results

中得到两个对象

但是在由于 knockout 绑定(bind)而创建的 View 中,我将第二组值填充了​​两次。 (我在数据库中有两组值)

注意:如果我没有定义任何元数据,则此代码有效。问题出在我使用元数据的场景中

元数据

var sample=sample||{};sample.metadata=
{
"dataServices":[
{
"serviceName":"/sample",
"hasServerMetadata":true,
"jsonResultsAdapter":"webApi_default",
"useJsonp":false
}
],
"structuralTypes":[
{
"shortName":"Employee",
"autoGeneratedKeyType":"None",
"defaultResourceName":"Employee",
"dataProperties":[
{
"name":"id",
"dataType":"MongoObjectId",
"isNullable":false,
"defaultValue":"",
"isPartOfKey":true,
"validators":[
{
"name":"required"
}
]
},
{
"name":"name",
"dataType":"String",
"maxLength":100,
"validators":[
{
"maxLength":100,
"name":"maxLength"
}
]
},
{
"name":"age",
"dataType":"String",
"maxLength":100,
"validators":[
{
"maxLength":100,
"name":"maxLength"
}
]
}
]
}
],
"resourceEntityTypeMap":{
"Employee":"Employee"
}
};

最佳答案

确保您有一个在您的模型中定义并通过网络传输的主键。如果您将这些值保留为 null,当 breeze 将它们添加到缓存并发现键相同时,它们将相互覆盖。

关于javascript - Breeze 和 Knockout 绑定(bind)不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19314825/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com