Articles of meteor

Cron工作在Meteor

我想知道是否可以在任何特定的时间删除或修改MongoDB集合中的数据。 把它看作是在一天结束时必须删除/更新的微不足道的数据。 把我指向一个方向。

PDF与图像与节点和meteor – 如何通过缓冲区作为input文件?

我需要编写一个应用程序,可以上传PDF,然后将第一页转换为图像。 我正在使用npm包https://www.npmjs.com/package/pdf-image 。 这是我的客户端代码: 'change #upload-materials'(event, template) { const file = template.$('[name=materials]')[0].files[0]; const reader = new FileReader(); reader.readAsArrayBuffer(file); reader.onload = () => { Meteor.call('convertPDFToImage', reader.result, (error, result) => { if (error) { throw new Error(error); } console.log(result); }); }; … 这是我的服务器端代码: convertPDFToImage(file) { const pdfFile = new PDFImage(file); console.log(pdfFile); … 以上不起作用。 根据文档,我需要传递一个path作为创buildpdfFile的第一个选项。 有人知道怎么做吗?

meteor:你如何添加一个模块,NodeJS风格?

所以在节点我习惯创build一个文件,导出一个对象或函数。 在meteor我相信,每一个文件被parsing和任何添加的variables添加为全球。 我希望能够添加仅根据需要使用的文件,或者当我导入它们时,并且不能分配全局variables。 或者,也许我做错了? 有meteor的方式吗?

meteor反应错误:无法读取未定义的属性“0”

在使用React的非常简单的Meteor应用程序中,有一张表列出了Meteor.users集合中的所有注册用户。 但是,当试图显示每个用户的电子邮件地址时,浏览器JS控制台正在抛出以下错误,尽pipe电子邮件地址在HTML页面上正确呈现。 Exception from Tracker recompute function: TypeError: Cannot read property '0' of undefined at Users.render (User.jsx:8) 为什么这个错误发生? /imports/ui/User.jsx import React, { Component } from 'react'; export default class Users extends Component { render() { return ( <tr> <td>{ this.props.user._id}</td> <td>{ this.props.user.emails[0].address }</td> // this is line 8 </tr> ) } } /imports/ui/App.jsx import React, […]

MongoDB通过nodeJS中的索引来更新文档的数组元素

如何在Meteor或nodeJS中增加一个MongoDB文档数组的特定元素的值? 说,我有以下文件: { "_id" : "4tP6ewe4Z5kwYA3Je", "name" : "chutia", "address" : "shonir akhra", "itemCount" : "4", "items" : [ "3", "4", "13", "24" ] } 我需要增加items数组的第n个元素。 其中n是一个variables。

unit testing查询数据库的方法

所以我创build了一个接受ID的函数,通过数据库从数据库内部查询数据库,根据不同的场景返回数据,然后我们返回数据。 我将如何unit testing这个function? 我会存根据我的存储库层查找方法返回数据,所以我不依赖于连接数据库?

callback如何真的在节点js工作

下面是我的代码有两个callback和一个获取路线 app.get('/login', function(req, res, next) { res.sendFile(__dirname + '/public/views/login.html'); }); app.use(function (req, res, next) { console.log("first callback 1"); var err = new Error('Not Found'); err.status = 404; next(err); console.log("first callback 2"); }); app.use(function (err, req, res, next) { // set locals, only providing error in development console.log("second callback"); res.locals.message = err.message; res.locals.error = req.app.get('env') === […]

内存不足,试图创build大的csv文件

使用Meteor并在服务器上尝试通过在Meteor集合中循环并插入一行来生成一个大型的csv文件。 在某些时候,服务器将会出现内存不足的错误 – 我的猜测是在循环结束之前内存不足,具体取决于集合的大小。 我怎样才能解决这个问题(以某种方式清除内存)? 代码如下: var job = Jobs.findOne(); var fs = Npm.require('fs'); var file = '/tmp/csv-' + job._id + '.csv'; var headers = ["Email", "Processed?", "Integration", "Passed?", "Reason", "Date"]; var stream = fs.createWriteStream(file); var first_line = headers.join() + '\n'; var wstream = fs.createWriteStream(file); var emails = rawEmails.find(); wstream.write(first_line); emails.forEach(function(rawemail) { var line_item = […]

鸣叫使用在meteor与Twitter的应用程序

我成功地通过仅应用程序authentication来授权请求​​。 但是当我试图用REST API发布推文时。 该错误与无法发布推文有关。 所以我做了一个研究,发现Twitter不允许应用程序唯一身份validation发布推文。 “它将无法:发布推文或其他资源;” 但是我find了“您的访问令牌”区域。 我可以用它来发布推文吗? 我怎样才能使用它? 我也可以使用相同的方法进行评论? 这是我的代码到目前为止, HTTP.call('POST', 'https://api.twitter.com/oauth2/token', { params: { 'grant_type':'client_credentials'}, headers: { 'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8', 'Authorization': 'Basic '+base64token } },function (error, response) { if (!error && response.statusCode == 200) { token = response.data.access_token; HTTP.call('POST', 'https://api.twitter.com/1.1/statuses/update.json', { params: { 'status':data.tweet}, headers: { 'Authorization': 'Bearer '+token } },function (error, response) { […]

Heroku:更新节点版本不起作用

我想更新我的应用程序节点版本Heroku目前它是0.10.40 Heroku应用程序 要更改为我所需的版本,我将package.json文件调整为: { "name": "myapp", "private": true, "engines": { "node": "4.8.4" }, "scripts": { "start": "meteor run" }, "dependencies": { "meteor-node-stubs": "~0.2.0" } } 然后将我的代码部署到heroku应用程序。 但是在通过heroku CLI检查版本时仍然如此 heroku run node -v -a myapp 该版本不更新,它仍然使用较旧的版本。 任何帮助!