问题标签 [hydration]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - 学说2,从反面检索相关数据
我有 2 个实体。
简单的逻辑是一个用户有很多送货地址,所以他将来可以选择其中一个进行送货。
第一个实体,Direccion(地址)。
第二个实体是 Usuario(用户)
我已经阅读了许多博客和类似的问题,但是当我尝试在关系的反面(OneToMany)上使用 $usuario->获取指令();
我正在非 MVC 架构中使用此代码,到目前为止,一切都像魅力一样通过使用 Doctrine 语句的 DAO 创建和更新,所以我知道在结束点(更新、创建、持久和刷新,使用 find、findBy 等检索数据),一切正常。
当我尝试从使用两个类(Usuario-InverseSide 和 Direccion-OwnerSide)的服务层填充 ArrayCollection 调用时,没有任何反应,Usuario 实例上的 $direcciones arrayCollection 属性没有获取任何内容,即使我尝试建立fetch="EAGER" 在注释上。
对于其余的数据或属性,一切正常,用户的所有其他属性都可以很好地填充。
由于某种原因,没有考虑注释,不知道为什么。我花了几天时间试图弄清楚如何完成这种访问关联数据的方式,不想使用 DQL,但在这一点上,我想我会走这条路。
我尝试了一些硬编码来测试,结果是一样的,$direcciones 没有得到他的数据。显然已经被丢弃,Usuario(用户)的确切 ID 已经设置了他的相关 direcciones(地址)。
该关系仅在 mysql InnoDb 表上的 Direccion 上使用名为 id_usuario 的 FK 定义。
不知道我是否应该在 Usuario 桌子上设置其他东西。或者如果我在项目中存储实体的方式有问题。
请帮助我,任何建议将不胜感激。
android - Phonegapbuild hydration 不工作 Android 8.1
最近水合作用已停止对我的应用程序起作用。几周前我的一切设置都很好,但在本周恢复我的项目后,它就停止了工作。
该应用程序安装良好,检测到更新并下载它。但随后它陷入了错误:
未捕获的类型错误:window.resolveLocalFileSystemURL 不是
child.downloadComplete (hydra.js:219)
at child.trigger (backbone-min.js:163)
at hydra.js:200
at ContentSync.emit (plugins/phonegap-plugin ) 的函数-contentsync/www/index.js:171) 在 Object.callbackFromNative (cordova.js:293)
上成功 (plugins/phonegap-plugin-contentsync/www/index.js:98) 在:1:9
我不太确定是什么问题。我的项目没有任何变化,但我已将设备从 8.0 升级到 8.1。
我试过包括cordova-plugin-file,因为这似乎是缺少的。但是,它没有用。我假设我的项目插件在水合后加载。
reactjs - Hydrating a React/Redux App From a REST API
I have a React/Redux application for my front-end, and a REST API for the backend and I use JWT as a sort of 'session' id (comes out of the box with Laravel Passport, my oAuth server).
Anyways, I was wondering what the best strategy is for hydrating the redux store when the page initially loads when you have a RESTful service that has endpoints for individual resources.
At the moment I'm doing it on component mount. So say a component lists a resource, I call the api/hydrate the store on component mount for that resource. This results in many API calls though, and it can result in unnecessary calls when the component mounts again.
Is there a better alternative to this that you're aware of? My main concern is that I don't want to introduce some weird endpoints to my API specifically for hydrating pages.
symfony - symfony 3.4中一对多关系的自定义水合器
我有 2 个实体:用户、文章和与属性的多对多关系,用于描述用户与文章的交互。该属性描述了交互的类型(例如,书签...)。
在这种情况下,我需要一个中间实体(UserArticle),它具有从 Article 到 UserArticle 的一对多关系:该属性在 Article 实体中称为 userInteractions。
它是一个 API,当我创建查询生成器时,我会得到当前登录用户喜欢和收藏的文章的这种结果:
}
没关系,但对 javascript 前端不方便:我更愿意公开布尔字段:isLiked:true、书签:true、otheraction:false ...,因为它更容易解析。
我想我必须写一个定制的水合器。我为另一种关系(没有属性的多对多)做了它,它就像一个魅力,但在这种情况下,它只有在有 0 个或一个交互时才有效。如果有 2 个或更多操作,我会在调用父 Doctrine Object hydrator 时收到 500 错误和通知。这是我的保湿剂:
}
我试图查看对象水合器,但它确实是一团糟,不容易理解,我认为在这种情况下,使用自定义水合器可能是不合适的。有什么建议吗?谢谢
php - 嵌套的嵌入对象错误地水合为空(Doctrine2,php)
摘要:当它们包含在实体中时,Doctrine Embedded 类型无法填充,而这些实体本身又包含在另一个顶级实体中。
详细信息:我有一个顶级实体A
,它与一个中间级实体有ManyToOne
关系,而中间级实体B
又具有一个 Embedded 对象C
。
当我检索顶级实体(使用$entityManager->getRepository(A::class)->find($aid)
)时,返回的 A 对象的$b
变量将其$c
属性显式设置为 null (而不是 - 如您所料 - 完全不存在)。查询$c
属性不会导致B
水合 - 相反 $c 保持为空。
如果我首先进行虚拟调用以获得B
eg的简单属性reference
,则可以B
正确补水并正确$c
填充。
同样,如果我进入中级水平,$entityManager->getRepository(B::class)->find($bid)
那么也没有问题。
这是教义的限制吗?
(一个可能的复杂因素是 A 本身是另外两个实体的基类)
doctrine-orm - Zend Framework 子集合未正确补水
我对子集合的值没有正确补水有疑问。我将 zend 框架 3 与学说 2 一起使用。
由于我必须复制大量代码,因此我将描述我在做什么,如果需要,我将使用代码进行更新。
我们有以下内容:
- VillaForm 是一个表单元素
- VillaFieldset 是一个 Fieldset 元素,是 VillaForm 的基本字段集
FacilityCategoriesFieldset 是一个 Fieldset,用于 VillaFieldset 中的 Collection 元素
/li>设施字段集,它是一个字段集,用于 FacilityCategoriesFieldset 中的集合元素
/li>
所以从上面看,我们有
VillaForm contains VillaFieldset that contains Collection of FacilityCategoriesFieldset which contains a Collection of FacilitiesFieldset
假设我们在实际的表单页面上有这个例子。
我的问题是,表单提交后,虽然发布的数据是正确的,但水化后的结果会是这样的:
FacilityCategoriesFieldset 的最后一行的FacilityFieldset 行用于FacilityFieldset 的所有行。
这只发生在一个包含另一个集合的集合的字段集时。有没有人暗示我可能做错了什么?如果您需要,我会给您任何其他信息/代码。
非常感谢。
vue.js - 我们可以阻止 Vue 为特定组件执行客户端水化吗?
我是新手Vue
,我们正面临一个问题,即页面的总DOM
大小增加了,因为我们在DOM
Vue 客户端水合的配置中存储了大量数据。出于 SEO 的目的,我们不能跳过服务器端渲染。
我希望是否有任何方法可以阻止水合作用在少数Vue
组件上?
所以基本上,我们可以强制 SSR 跳过附加的“data-server-rendered”属性吗?
vue.js - 从 Vue 指令访问组件名称
我想创建一个自定义Vue
指令,让我可以在我的页面上选择我想要补充的组件。换句话说,这就是我要归档的
Vue
我在服务器上呈现我的应用程序 (ssr
)我将指令附加到某些组件,如下所示:
/li>我将我的代码发送给客户端,只有那些具有该
v-hydrate
属性的组件才会在客户端上进行水合(作为root
元素)。
我想以这种方式大致实现这一点:
我将创建一个标记并记住组件的指令:
我的想法是在我的inserted
方法中为服务器呈现的元素编写一个数据属性,我可以在客户端中读取它,然后用它来水合我的组件。
现在我有两个问题:
- 这是一个可行的方法吗
- 如何获取组件名称
el.setAttribute
?vnode.component.name
只是虚拟代码,不存在这种方式。
PS:如果你想知道为什么我只想对我网站的某些部分进行补水:这是广告。他们弄乱了破坏 Vue 的 DOM。