这是.js文件,它位于我的meteor项目的进口/ ui。
import React from 'react';
import {Tasks} from './../api/tc';
export default class Task extends React.Component{
render(){
return(
<div key={this.props.task._id} className='item'>
<p>
{this.props.task.name}
</p>
<p className='prioritypoints'>
priority level : {this.props.task.score}
</p>
<button className='button button--round' onClick={() => tc.remove({_id: this.props.task._id})}>X</button>
<button className='button button--round' onClick={()=>
tc.update({_id: this.props.task._id}, {$inc: {score:1}})}>
+1</button>
<button className='button button--round' onClick={()=>
{tc.update({_id: this.props.task._id},{$inc: {score:-1}})}}>
-1</button>
</div>
);
}
};
&#34; TC&#34;是我在import / api / tc中定义的mongoDB集合的名称。按钮的onClick事件没有响应,因为根据控制台未定义task_collection。
tc.js:
import {Mongo} from 'meteor/mongo';
export const Tasks = new Mongo.Collection('tc');
为什么即使在我在此文件中导入集合后出现了这样的问题?
答案 0 :(得分:0)
它不应该是tc.remove,它应该是
Tasks.remove({_id: this.props.tasks.id});
所有查询都在Tasks上运行,因为它是Mongo.Collection的实例而不是tc,tc是你的db名称。