Javascript Breezejs id在保存更改后修复
我使用breeze以以下方式创建新实体:Javascript Breezejs id在保存更改后修复,javascript,breeze,Javascript,Breeze,我使用breeze以以下方式创建新实体: var item = manager.createEntity("ExercisesAndMuscles", initialValues); saveChanges().fail(addFailed); logger.log("id is", item.Id); function saveChanges() { return manager.saveChanges(); } 控制台中的是-1,根据Breeze文档,这是应
var item = manager.createEntity("ExercisesAndMuscles", initialValues);
saveChanges().fail(addFailed);
logger.log("id is", item.Id);
function saveChanges() {
return manager.saveChanges();
}
控制台中的是-1,根据Breeze文档,这是应该的。当我刷新页面时,我看到id不再是-1,也就是说,现在id是来自数据库的永久id
所以我的问题是,我如何能自动获取这个id,即不刷新页面。
我知道一个可能的解决方案是在客户端生成ID,但我不想这样做
还有别的办法吗?若在客户端生成id是唯一的方法,那个么正确的方法是什么呢 saveChanges是异步发生的,因此在您记录时,id确实是-1,但在不久之后它将成为永久性的
var item = manager.createEntity("ExercisesAndMuscles", initialValues);
saveChanges().then(showId).fail(addFailed);
function showId () {
logger.log("id is", item.Id);
}
function saveChanges() {
return manager.saveChanges();
}
在返回的承诺完成后记录id,如图所示,它将不再是-1