问题标签 [dstore]
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.
javascript - 使用 dstore Filter 运算符会引发编译器错误
我的项目中使用 dstore 和 dgrid 有以下代码。当我使用过滤器运算符时,我在 eclipse 以及 Dojo build 附带的 Closure 编译器中出现编译错误。
Eclispe 错误:标记 '.' 上的语法错误,此标记后应有标识符。
闭包编译器:'.in' 处出错,需要标识符。
使用闭包编译器编译 dgrid 和 dstore 包非常顺利。但是当我用上面的代码编译我的包时会导致错误。
我还想指出,代码在所有浏览器中都按预期工作。
你们中的任何人都可以在这里阐明一下吗?
谢谢!。
collections - Dojo dgrid dstore 集合 - “或”过滤器不起作用
我正在使用 Dojo dgrid,并且使用“或”语句进行 dstore 过滤时遇到问题。
当它们分开时,这两个条件都很完美,但是当我将它们放在“或”过滤器中时,它就像“和”语句一样工作:两者都必须为“真”才能返回值。
如何使“或”语句在 dojo dgrid dstore 中正常工作?
dojo - 对集合进行过滤后无法访问 Dgrid 集合数据
所以,我collection
在 mydgrid
和store
is 类型中使用[Memory, Trackable]
。我正在使用商店过滤(如此处给出)。当我过滤存储数据时,返回的集合对象没有任何数据属性,因此我无法访问集合中的数据。虽然,当我更改集合时,更改会反映在 d-grid 中,但我需要访问集合中的数据来做其他事情。
这是我的代码:
我无法data
从newCollection
. this.grid.collection
我在这里做错了吗?
dojo - 如何使用 contains 方法过滤 dstore?
我有一个填充了 dstore 普通旧内存集合的 dgrid,我正在尝试使用“包含”过滤器方法对其进行过滤。商店数据如下所示:
我想检索给定用户在 users 数组中的所有记录。据我了解,我希望能够设置一个过滤器new Filter().contains('users', '15');
,并将其设置为网格的集合,在此示例中留下一行(id = '25')。但是,我剩下 0 行。我还尝试为过滤器提供正则表达式,而不仅仅是值匹配,new Filter().contains('users', new RegExp('^15$'));
但是这不会过滤掉任何行。
我正在使用 dojo v1.10.4、dgrid v1.0.0 和 dstore v1.1.1。这是一个展示我的问题的JSFiddle 。
难道我做错了什么?
谢谢。
dgrid - dgrid 在第一次加载时调用了两次rest store
这是我的问题。我定义了一个 Rest DSTORE 和一个使用它的 DGRID。我的问题是,当第一次加载 dgrid 时,它调用了两次休息服务。谁能帮我理解为什么?提前致谢。
rest - 隐藏选项卡容器中的 DGrid 仅查询 dstore 一次
我有几个 DGrid OnDemandGrid,它们是在一系列选项卡中创建的,每个选项卡都包含一个带有网格的内容窗格。网格的目标是提供范围标题、id 属性等的 Rest 服务。第一个/选定/可见的选项卡完全填充了对 Rest 服务的几次调用,如预期的那样。其他一些选项卡填充正常,但它们的人口稀少,因此只需要一次调用服务。有问题的选项卡仅显示前 25 个,因为它仅查询服务一次(数据存储区中有超过一千条记录)。
因此,如果问题选项卡是创建网格之前选定的选项卡,则相关选项卡会调用 rest 服务两次以填充网格的可见部分。如果选项卡和网格是在选择之前创建的,那么只有第一个查询发生(在打开选项卡之前)并且在网格中,其余的永远不会被查询。我只能猜测选项卡没有被选择/显示,网格可能不知道要查询多少来填充与选项卡匹配的网格大小。
测试代码包含在下面,但使用内部休息服务。我在网格中混合了 DijitRegistry。如果我遇到问题并单击其中一列以在问题网格中排序,则所有内容都会正确填写。尝试 grid.resize 并将网格直接放在 tabcontainer 上,没有任何效果。
简单的 OnDemandGrid 以 Rest 服务为目标,该服务与添加到 tabcontainer 的 contentpane 的 href 中的 DOM id 相关联,但会导致很多问题......
建议?
javascript - dstore 过滤日期范围
我有一个具有date
属性的数据数组,我需要根据日期过滤数据。
我dstorejs
用来存储数据如下
我需要根据员工的加入日期进行过滤,例如从 2014 年 1 月 1 日到 2015 年 3 月 3 日加入的人
这给了 2014 年 1 月 1 日加入的所有员工,但如果我需要在一个范围内过滤
这不起作用,因为它不是一个数字,它是一个string
或date
对象
为了实现这一点,我是否需要编写他们在教程中提到的自定义商店?
有没有其他方法可以做到这一点?
还是有任何其他框架dstore
可以实现这一目标?
javascript - 使用 WebSocket 和 dgrid 在自定义 dstore 中丢失事件
我正在尝试创建自定义商店,它应该使用 WebSocket 或 REST(在 WebSocket 失败的情况下)。
代码文件rachet-store.js
它工作得几乎完美。它也适用于 REST (myRest)。
问题是如果使用 wsStore 并且如果我在数据网格的第一页或第二页上删除一行,则会通知数据网格并自行刷新。但是,如果我在第三页或任何其他页面上删除一行,则商店不会刷新。
我认为问题可能在某个地方sort()
,因为使用网格(或分页)的工作方式。(但这只是一个猜测......)
所以,问题是,我做错了什么?
dojo - 具有辅助排序列的 dgrid 自定义排序
我目前在 dgrid 上使用自定义排序功能(粘贴在下面)。它不会彻底改变排序,只是对一个特定列进行唯一排序,并对其他列进行排序,不区分大小写。我想通过名为“scheduled”的列添加辅助排序,以便在对任何其他列进行排序时添加到排序中。我只是不知道该怎么做。我已经看到了如何覆盖排序以按两列排序,但不是在使用自定义排序时。二级排序将始终存在,无论单击哪个其他列。
作为参考,我正在运行 dojo 1.10 和 dgrid 1.0。数据来自 RequestMemory DStore,我真的希望这种情况发生在网格上,而不是回到存储级别。任何帮助,将不胜感激。
tree - dgrid 树首先渲染平坦
我有一个与这篇文章非常相似的问题。
我的症状是一样的(父母和孩子一开始是平的。你可以“展开”父母让一些孩子在他们下面正确显示,然后你可以再次折叠他们让树显示它的样子应该)但提供的解决方案(将 store.getRootCollection() 传递给网格而不是仅仅存储)对我不起作用。如果我这样做,除了显示的标题外,我什么也得不到。
首先,我正在尝试使用dgrid 实验室中显示的代码使其工作(只需检查“网格功能”中的“树”),以尽可能多地消除我的错误。
我能想到的唯一与示例的代码不同的是,我在自定义小部件中制作了这个网格,并且我正在加载其他几个模块(我知道我以后会需要它们)
这是网格与集合一起显示的方式:存储,
如果您需要更多信息,或者我错过了任何 SO 指南或礼仪,请告诉我,我很乐意编辑、改写等。