gpt4 book ai didi

javascript - Breeze js - 如何从 JSON 字符串创建实体并将其导入 breeze 缓存

转载 作者:行者123 更新时间:2023-11-30 17:29:15 25 4
gpt4 key购买 nike

我正在开发一个使用 breeze js、angular js、web API、 Entity Framework 等的移动单页网站。

为了优化网站,我将 breeze 元数据包含在捆绑的 JavaScript 中,该 JavaScript 包含网站所需的所有其他 JavaScript。理想情况下,我希望浏览器只请求 index.html,它应该包含应用程序运行所需的所有内容,包括捆绑和缩小的内联样式和 JavaScript。

但是,正如 Breeze 元数据对于站点的运行非常重要并因此嵌入到捆绑的 JavaScript 中一样,还必须存在一个必需的复杂实体(对其他一些实体具有一些深度导航属性)使网站功能齐全。我也想在捆绑的 JavaScript 中嵌入这个实体和它引用的所有实体。我该怎么做?

我始终可以创建一个 JSON 字符串来表示该实体及其引用的所有实体。然后将该 JSON 字符串与其他字符串一起嵌入到捆绑的 JavaScript 中。但是,如何使用我在 JavaScript 中嵌入的实体 JSON 字符串轻松地将这个复杂的实体导入到 breeze 实体系统中?或者是否有更好的解决方案来预加载具有复杂实体的 breeze 实体系统,而无需从服务器发出对该实体的请求?

我还想避免编写服务器代码来吐出在客户端创建实体的 JavaScript。

最佳答案

最简单的方法是对 EntityManager.createEntity 调用使用“initializer”参数。

http://www.breezejs.com/documentation/creating-entitieshttp://www.breezejs.com/sites/all/apidocs/classes/EntityManager.html#method_createEntity

这个调用看起来是这样的。

myEntityManager.createEntity("Employee", { lastName: Smith", firstName: "John" });

所以在你的情况下你可以尝试:

var initialValues = JSON.parse(json);
myEntityManager.createEntity("Employee", initialValues);

根据您的用例,您可能还想设置这个新创建的实体的“entityState”。

关于javascript - Breeze js - 如何从 JSON 字符串创建实体并将其导入 breeze 缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23530234/

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