问题标签 [method-chaining]

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.

0 投票
17 回答
31153 浏览

php - 在 PHP 中链接静态方法?

是否可以使用静态类将静态方法链接在一起?假设我想做这样的事情:

. . . 显然我希望 $value 被分配数字 14。这可能吗?

更新:它不起作用(你不能返回“自我” - 它不是一个实例!),但这是我的想法带我去的地方:

在解决了这个问题之后,我认为简单地使用类实例而不是尝试链接静态函数调用会更有意义(这看起来不可能,除非上面的示例可以以某种方式进行调整)。

0 投票
20 回答
728 浏览

design-patterns - Is there anything inherently wrong with long object invocation chains?

I've organized my code hierarchically and I find myself crawling up the tree using code like the following.

I'm not drilling down into the task object; I'm drilling up to its parents, so I don't think I'm losing anything in terms of encapsulation; but a flag is going off in the back of my mind telling me there's something dirty about doing it this way.

Is this wrong?

0 投票
3 回答
4705 浏览

javascript - Javascript Window.Onload 函数链接

只是为了实验,我一直在尝试确定window.onload在网络浏览器中非破坏性链接功能的不同方法。这是我到目前为止的想法:

我看到的问题是每次链接一个函数时,它都会向堆栈添加另一级函数调用。有没有更好的方法来解决这个问题,不会给调用堆栈增加不必要的深度?

0 投票
3 回答
489 浏览

jquery - jQuery 是否对方法链接采取了向后的方法?

只有我发现以下代码本质上是向后的吗?

我使用这篇文章作为参考。

我最初的方法是抓住body,然后将外部附加到主体,然后将内部附加到外部。

向后接近它,然后用类似的东西在层次结构中跳跃,这parent ()让我有点好奇......

0 投票
2 回答
2435 浏览

javascript - 是否有一些 dojo.fx.sleep 函数可以在 dojo.fx.chain 动画中使用?

我想fadeIn超过一秒钟的节点。然后让它保持 10 秒钟。然后再fadeOut持续 3 秒。一种链接方式如下:

在前面的代码中,中间步骤是一种非常愚蠢的一事无成的方法。是否有某种dojo.fx.sleep动画在指定的时间内什么都不做?

0 投票
3 回答
10237 浏览

asp.net - 使用 HtmlTextWriter 呈现服务器控件?

我正在编写RenderContents()我的 ASP.NET 服务器控件的方法。该方法使用HtmlTextWriter对象来呈现输出内容。对于我正在编写的控件,使用HtmlTextWriter's 方法似乎需要很多代码行来打开和关闭每个标签并将每个属性添加到流中。最后,我觉得我最终会得到比它需要的更长的代码。

我在想,如果我使用一个可链接的类,例如StringBuilder,我的代码会更容易阅读和编写。

我想知道的是,是否有任何理由使用该HtmlTextWriter对象来呈现我的整个控件的内容?除了安全检查(我假设)之外,它还包括确保您不会以错误的顺序编写标签或创建无效标记,我看不出任何原因。

似乎只做这样的事情会更容易:

有什么理由说明这是一个坏主意吗?

更新
响应Mehrdad Afshari的回答:
我并没有过多考虑StringBuilder实例化单独对象的内存要求。为 HtmlTextWriter 制作一个包装器怎么样,这样它就可以被链接起来,这样就不会产生额外的字符串。

0 投票
3 回答
114 浏览

ruby-on-rails - 为什么这个关联的创建调用不起作用?

我有一个包含许多项目的用户模型。评级属于用户和项目。

在数据库中,我将 rating.user_id 设置为不为 NULL。

当我创建一个项目时,我想这样做:

但是,这与 SQL 错误“user_id 不能为零”有关

所以我将create方法重写为

效果很好。

但是,我曾认为将创建方法链接到当前用户的接收器会填充评级的 user_id。有谁知道为什么不?

TIA。

0 投票
3 回答
1124 浏览

c# - 函数式 C# API 设计(返回函数参数增加计算结果)

有一个关于在 C# 代码中使用函数式编程技术的问题。例子

让我们有接口

假设我们需要布局图的顶点(将 Point 分配给每个顶点)。

简单的布局路线可以有这样的签名:

哪个可以这样使用

在下面的设计中 PrintCoordinates 需要对图形和布局的引用。

考虑功能样式设计,其中布局路由通过有关图形顶点坐标的信息来增强图形信息。

ILayoutedGraph 实现 IGraph 和 ILayoutInfo 的地方

1)在这个设计中 PrintCoordinatesNew 只得到一个参数。2)奇怪的接口ILayoutedGraph诞生了,它不包含任何方法,只是包装了其他接口。如果某些库具有其他类型,例如 INetwork、ITree,我们最终会创建包装接口 ILayoutedNetwork、ILayoutedTree(这很糟糕)。

所以这种技术只用于函数式语言,只是因为它们不能以其他方式工作(没有状态,所以函数必须将输入与计算信息结合起来供外部例程使用),或者它在命令式世界中也是可行的?

非常感谢,

PS:可以在这里找到更详细的漂亮打印示例 http://tivadj.blogspot.com/2009/02/designing-c-api-in-functional-style.html

0 投票
15 回答
4262 浏览

c++ - 方法链 + 继承不能很好地结合在一起?

考虑:

有什么技巧可以解决这些问题?

示例:使用模板魔术使 Button::move 返回 Button& 或其他东西。

编辑很明显,第二个问题是通过将 setAngle 设为虚拟来解决的。

但是第一个问题仍未以合理的方式解决!

编辑:嗯,我想在 C++ 中做正确是不可能的。无论如何感谢您的努力。

0 投票
9 回答
14882 浏览

javascript - JavaScript 对象方法链:有用吗?

所以......在 JavaScript 中搞砸了一个对我来说很新的想法,让 Object 的方法返回它们是方法的 Object;这会导致可链接性。那么我的问题是:这有什么用?我把它放在一起来测试基本的工作原理:

这显然不是一个使用这个概念的恶性有效的例子,所以你能指出我做的正确的事情吗(除了jQuery,请)?