Rally 基于某些条件禁用卡的拖动

Rally 基于某些条件禁用卡的拖动,rally,Rally,我正在开发一个定制板,为我的团队添加一些需要的功能。我正在寻找最好的(或任何)方法,以防止基于某些标准的卡片被(或出现)拖动-例如,当Ready==false,或当前用户不是所有者,等等。我扩展了纸板、列和卡片,因此我有很大的自由度,但我似乎不知道我需要在哪里插上电源。我可以发布一些代码,但到目前为止我所尝试的都没有成功,所以我不确定这会有多少好处。如果有人做过类似的事情,我们将不胜感激 谢谢, 彼得·波波夫(Peter Popov)既然您已经扩展了,您可能希望查看。这允许您指定一个。drop

我正在开发一个定制板,为我的团队添加一些需要的功能。我正在寻找最好的(或任何)方法,以防止基于某些标准的卡片被(或出现)拖动-例如,当Ready==false,或当前用户不是所有者,等等。我扩展了纸板、列和卡片,因此我有很大的自由度,但我似乎不知道我需要在哪里插上电源。我可以发布一些代码,但到目前为止我所尝试的都没有成功,所以我不确定这会有多少好处。如果有人做过类似的事情,我们将不胜感激

谢谢, 彼得·波波夫(Peter Popov)

既然您已经扩展了,您可能希望查看。这允许您指定一个。drop controller允许您提供以下方法:。在这里,您可以编写一些逻辑代码,指定此函数何时返回true,具体取决于您希望允许卡可拖动的条件


请注意,Rally.ui.cardward.plugin.ColumnDropController被标记为Private,可能无法保证永远存在。也许Rally的一位开发人员可以评论在代码中使用此插件是否是一个好主意。

谢谢Mark。在你回应之前,我们采取了一种快速而肮脏的方法。我们所做的是扩展列并重写addDragDropHandle():addDragDropHandle:函数(card){card[card.canDragDropCard()?'addCls':'removeCls'](cardDragablecls);}card.candragdropHandle()是一个公共方法,它根据我们想要实现的任何业务逻辑返回true。这是可行的,但我们不太喜欢它,所以我们将按照您描述的方式进行重构。我有点困惑为什么私有类有公共方法,所以我大胆假设它应该是可扩展的。为了完整起见,我们实现的快速而肮脏的方法是扩展列并重写此方法:addDragDropHandle:function(card){card[card.canDragDropCard()?'addCls':'removeCls']('drag-handle');}