0

当我调用以下代码时:

function createMandat (initialValues) {
        return manager.createEntity('Mandate');
}

它失败是因为“授权”类型未知。我理解这一点,因为当我调用此函数时,我还没有获取该类型的任何实体。

所以我的问题是,如果 metadataStore 不知道类型,我如何强制往返服务器以获取此类型的元数据?我的代码中这样做的最佳位置是什么?

4

1 回答 1

2

您可以调用manager.fetchMetadata,然后在 promise 解决后执行您的createEntity调用。

 manager.fetchMetadata().then(function() {
    var newMandate = manager.createEntity("Mandate");
    ...
 });

如果您先执行查询,则不需要执行此操作,因为如果在执行查询之前无法找到元数据,则查询执行会隐式执行 fetchMetadata。因此,以下内容也将起作用。

manager.executeQuery(myQuery).then(function(data) {
    results = data.results;
    var newMandate = manager.createEntity("Mandate");
    ...
 });
于 2013-04-22T17:17:42.177 回答