客户端从服务器方法接收数据
Receiving data from server method on client
我有以下 Meteor 方法,它使用 color-namer npm 包从十六进制值中查找颜色名称。
colorName: function (options) {
var Namer = Meteor.npmRequire('color-namer');
var name = Namer(options.color);
var color = name.basic[0].name;
return color;
}
在客户端,我有一个带有颜色选择器的表单,它将所有选项保存在选项对象中。颜色值保存为options.color.
我这样调用我的方法:
Meteor.call( 'colorName', options.color);
提交表单时,我想从服务器方法中获取返回的颜色,然后重写 options.color 值。
具体来说,我的想法是使用 options.color = color,但从服务器返回的颜色在客户端似乎无法访问。
我不确定如何访问在服务器而非客户端上创建的这个 var color 值。也许我以错误的方式思考问题,使用了错误的方法和正确的工具。
您可能还没有意识到您需要在客户端上使用回调函数,以便接收方法的结果:
Meteor.call( 'colorName', options.color, function(err, result) {
if (!err) {
// result is "color" on the server, do what you want with it
}
});
我有以下 Meteor 方法,它使用 color-namer npm 包从十六进制值中查找颜色名称。
colorName: function (options) {
var Namer = Meteor.npmRequire('color-namer');
var name = Namer(options.color);
var color = name.basic[0].name;
return color;
}
在客户端,我有一个带有颜色选择器的表单,它将所有选项保存在选项对象中。颜色值保存为options.color.
我这样调用我的方法:
Meteor.call( 'colorName', options.color);
提交表单时,我想从服务器方法中获取返回的颜色,然后重写 options.color 值。
具体来说,我的想法是使用 options.color = color,但从服务器返回的颜色在客户端似乎无法访问。
我不确定如何访问在服务器而非客户端上创建的这个 var color 值。也许我以错误的方式思考问题,使用了错误的方法和正确的工具。
您可能还没有意识到您需要在客户端上使用回调函数,以便接收方法的结果:
Meteor.call( 'colorName', options.color, function(err, result) {
if (!err) {
// result is "color" on the server, do what you want with it
}
});