我试图<div>
在 {{#each}} 周围插入容器,但效果不佳。它也很奇怪,因为它适用于 2 个普通帖子列表页面,但不适用于按距离对它们进行排序的第 3 个。
更新:
我注意到在我将模板 JS 从 更改为 后template.name.onRendered
,onCreated
排序页面可以正常工作。但是,仅当您从以前的帖子列表页面而不是从个人资料页面进入时,它才有效。
错误页面的唯一共同点是那些页面使用 publishComposite 进行排序。这可能是因为 publishComposite 有子父关系的问题吗?
错误信息
Exception in queued task: Error: Failed to execute 'insertBefore' on 'Node': The node before which the new node is to be inserted is not a child of this node.
at Error (native)
at Object.container._uihooks.insertElement (http://localhost:3000/packages/meteoric_ionic.js?e45c114e85716d9fad8bac1cd7904ae2700bc963:5750:19)
at DOMRange._insertNodeWithHooks (http://localhost:3000/packages/blaze.js?695c7798b7f4eebed3f8ce0cbb17c21748ff8ba8:383:21)
at Function.Blaze._DOMRange._insertNodeWithHooks (http://localhost:3000/packages/peerlibrary_blaze-components.js?4eddb4e3f0f660190548347e680d109a51a7050f:2377:10)
at Function.DOMRange._insert (http://localhost:3000/packages/blaze.js?695c7798b7f4eebed3f8ce0cbb17c21748ff8ba8:354:16)
at DOMRange.attach (http://localhost:3000/packages/blaze.js?695c7798b7f4eebed3f8ce0cbb17c21748ff8ba8:431:16)
at Blaze._DOMRange.attach (http://localhost:3000/packages/peerlibrary_blaze-components.js?4eddb4e3f0f660190548347e680d109a51a7050f:2437:33)
at Function.DOMRange._insert (http://localhost:3000/packages/blaze.js?695c7798b7f4eebed3f8ce0cbb17c21748ff8ba8:349:7)
at DOMRange.attach (http://localhost:3000/packages/blaze.js?695c7798b7f4eebed3f8ce0cbb17c21748ff8ba8:431:16)
at Blaze._DOMRange.attach (http://localhost:3000/packages/peerlibrary_blaze-components.js?4eddb4e3f0f660190548347e680d109a51a7050f:2437:33)
参考第 19 行的 meteoric_ionic js 文件
container._uihooks = {
insertElement: function(node, next) {
var $node = $(node);
if (!template.transition || !$node.hasClass('view') || IonNavigation.skipTransitions) {
container.insertBefore(node, next); //line 19
return;
}
相关的html
{{#ionView}}
{{#ionContent}}
{{#ionList}}
<div>
{{#each shops}}
{{> shopItem}}
{{/each}}
</div>
{{/ionList}}
{{/ionContent}}
{{/ionView}}