Meteor.methods是如何使用“本机代码”制作的?

时间:2014-11-02 06:13:07

标签: meteor

在浏览器中执行console.log(Meteor.methods)时,结果为

function () { [native code] }

我认为[native code]用于在浏览器中实现的功能?例如,Meteor.methods不是内置于Chrome中的。这怎么可能?

1 个答案:

答案 0 :(得分:5)

Meteor.methods是另一个JS函数的重新绑定:https://github.com/meteor/meteor/blob/devel/packages/ddp/client_convenience.js#L52。除了它是Function.bind的结果之外,没有什么特别之处。在你的控制台中尝试:

x = function () {}
y = x.bind(null, 1)

如果您打印y,则会[native code],因为Chrome不知道如何最好地打印绑定函数。