我需要在不使用UI
的情况下模拟“按下按钮”。为此,我需要创建一个稍后可以从开发人员控制台调用的函数。
我试图使用Meteor.methods
这样的语法:
// this code is in `server/index.js`
Meteor.methods({
hello: () => 'hello';
})
输入开发控制台Meteor.call('hello')
& Meteor.methods.call('hello')
。两者都返回undefined
我知道能够从开发控制台调用流星方法在某些情况下可能被认为是一种不好的做法,但我需要这个用于调试目的。
更新
最终目标是按下一个按钮,该按钮将从用户的github
帐户中获取数据(如果有的话)。因为这个任务包括多个步骤(即设置GitHub的OAuth
,获取数据,有某种UI等等)。我决定将任务分成几个较小的任务。
我已经可以为一个用户获取数据(现在它是硬编码的),现在我的目标是通过在客户端的控制台中输入Meteor的功能来模拟按钮点击(因为我不知道是什么库或者框架我将用于前端)
我的hello
示例是我此时想要实现的简化版本。
答案 0 :(得分:0)
export default class PostEdit extends React.Component {
constructor(props) {
super(props);
this.state = { data: [] }
}
componentDidMount() {
const self = this;
Meteor.call("post.get", route.current().params._id, function(
error,
result
) {
if (error) {
alert(error);
} else {
//use arrow functions to use this.setState
self.setState({data: result});
}
});
}
render() {
return (
<div>
<RenderEditPost data={this.state.data}/>
</div>
);
}
}