Tag: meteor

如何正确使用节点模块与meteornpm

第一次尝试使用meteor节点模块 安装: meteor add meteorhacks:npm 然后安装: npm install multer 在服务器目录中有一个单独的文件,名为“loadMulter”,只有这一行: var multer = Meteor.npmRequire('multer'); 现在,运行“meteor”,并得到这个错误: W20150609-12:22:56.528(-5)? (STDERR) W20150609-12:22:56.528(-5)? (STDERR) /home/eugene/.meteor/packages/meteor-tool/.1.1.3.4sddkj++os.linux.x86_64+web.browser+web.cordova/mt-os.linux.x86_64/dev_bundle/server-lib/node_modules/fibers/future.js:245 W20150609-12:22:56.529(-5)? (STDERR) throw(ex); W20150609-12:22:56.529(-5)? (STDERR) ^ W20150609-12:22:56.531(-5)? (STDERR) ReferenceError: require is not defined W20150609-12:22:56.531(-5)? (STDERR) at app/node_modules/multer/node_modules/busboy/node_modules/dicer/node_modules/streamsearch/lib/sbmh.js:5:20 W20150609-12:22:56.531(-5)? (STDERR) at app/node_modules/multer/node_modules/busboy/node_modules/dicer/node_modules/streamsearch/lib/sbmh.js:215:3 W20150609-12:22:56.531(-5)? (STDERR) at /home/eugene/dev/meteor/socially/.meteor/local/build/programs/server/boot.js:222:10 W20150609-12:22:56.531(-5)? (STDERR) at Array.forEach (native) W20150609-12:22:56.532(-5)? (STDERR) at Function._.each._.forEach (/home/eugene/.meteor/packages/meteor-tool/.1.1.3.4sddkj++os.linux.x86_64+web.browser+web.cordova/mt-os.linux.x86_64/dev_bundle/server-lib/node_modules/underscore/underscore.js:79:11) […]

在服务器上运行一个asynchronous的方法

我有一个meteor服务器方法,执行一个函数,我想在后台运行。 我希望服务器方法继续,而函数运行在不同的过程中。 方法: myMethod: function(arg) { _event.emit("myEvent",args); …do some other stuff } 我希望服务器做其他的事情,并返回到客户端,并在后台执行_event.emit中的东西,没有结果必须发回客户端。 它目前所做的是在_event.emit中运行这些东西,然后返回到客户端。 我尝试通过在服务器端调用一个空的callback函数来解决这个问题,但这并没有办法 myMethod: function (arg) { return Meteor.call("secondMethod", _.toArray(arg), function() {}) } secondMethod: function (arg) { _event.emit("myEvent",args); } 希望有人知道这个解决scheme。 谢谢

在Meteor中,Meteor.wrapAsync是否阻塞其他呼叫?

在Meteor JS代码中,我使用HTTP.get方法在一个方法内调用服务器。 我必须返回结果给客户端,所以我用Meteor.wrapAsync包装这个函数来获得一个同步函数。 var httpSync = Meteor.wrapAsync(HTTP.get, this); var result = httpSync(myUrl); 我的问题是 – 将Meteor.wrapAsync(AsyncFunction)阻止其他请求? 它会影响多个请求的并行执行吗?

“dyld:懒惰符号绑定失败的原因:符号未find:”从ZMQ构build错误?

我正在OSX 10.9.5上本地开发Meteor应用程序。 我得到这个错误: dyld: lazy symbol binding failed: Symbol not found: _node_module_register 我相信这与zmq软件包有关。 更多来自错误: Referenced from: /Users/user/node_modules/zmq/build/Release/zmq.node 我试过了: npm重build 卸载zmq并重新安装 卸载,重新安装,然后npm重build 删除node_modules目录,然后重新安装zmq以排除任何可能的包冲突。 (在这里引用: dyld:懒符号绑定失败:找不到符号:_node_module_register ) 可能的问题我宁愿不testing,除非绝对必要(因为它需要完全升级,我在一台较旧的计算机上): Warning:Error:dyld:lazy symbol binding failed:Symbol not found:_objc_autoreleasePoolPush Git> dyld:懒符号绑定失败:找不到符号:_iconv_open 在较新版本的OSX下编译的zmq? (我正在使用10.9.5。升级不是一个可行的select,除非绝对必要。) 如果这是问题…. 当nm找不到符号时,处理“dyld:lazy symbol binding failed:Symbol not found”错误 …我如何将库静态链接到zmq? 完整的错误: => App running at: http://localhost:3000/ W20151202-10:02:42.764(2)? (STDERR) dyld: lazy symbol […]

meteor运行一个方法asynchronous,使用meteorhacks:NPM包

我正在尝试使用Steam社区( steamcommunity )npm软件包以及meteorhacks:npm Meteor软件包来检索用户的库存。 我的代码如下: LIB / methods.js: Meteor.methods({ getSteamInventory: function(steamId) { // Check arguments for validity check(steamId, String); // Require Steam Community module var SteamCommunity = Meteor.npmRequire('steamcommunity'); var community = new SteamCommunity(); // Get the inventory (730 = CSGO App ID, 2 = Valve Inventory Context) var inventory = Async.runSync(function(done) { community.getUserInventory(steamId, 730, 2, […]

部署到弹性beanstalk时出错 – 未知作业:nodejs

我正在部署一个meteor项目到豆茎应用程序,但我收到错误: Script /opt/elasticbeanstalk/hooks/appdeploy/enact/50start.sh failed with returncode 1 并在/var/log/directory-hooks-executor.log我find: status: Unknown job: nodejs Failed to find status of job. Traceback (most recent call last): File "/opt/elasticbeanstalk/containerfiles/ebnode.py", line 599, in <module> main() File "/opt/elasticbeanstalk/containerfiles/ebnode.py", line 583, in main nodejs_upstart.start() File "/opt/elasticbeanstalk/containerfiles/ebnode.py", line 199, in start raise e Exception: Failed to run command: None 我正在运行64位Amazon Linux 2014.03 v1.1.0运行Node.js的任何想法的原因?

我是否需要在Meteor的每个文件中导入npm包,并在每个文件中设置选项?

我试图习惯使用npm软件包与常规Atmosphere软件包一起引入Meteor 1.3。 我已经可以使用slug包了 meteor npm install slug 然后在我的一个.js文件中,我用这个命令导入slug import slug from 'slug'; 它似乎工作。 但是,当我从另一个.js文件中尝试时,它不起作用。 我是否必须将导入命令放在每个要使用的文件的顶部? 这是在内存中多次加载它? 我也在改变使用默认选项 slug.defaults.mode ='rfc3986'; 而且我想知道是否需要把它放在我所有文件的顶部。 气氛包是很简单的。 您只需添加它们,然后在整个项目中使用它们。

meteor应用程序因没有出现任何原因而令人失望

当我运行我的应用程序时,出现以下错误信息 Errors prevented startup: While processing files with ecmascript (for target web.browser): client/templates/posts/post_item.js:59:3: Unexpected token (59:3) Your application has errors. Waiting for file change. Started MongoDB. 我的代码中提到的部分是以下内容(最后一行是确切的) Template.postItem.events({ 'click .upvotable': function(e) { e.preventDefault(); Meteor.call('upvote', this._id); }, 'click .disable': function(e) { e.preventDefault(); Meteor.call('unupvote', this._id); } });//here is the problem 有人可以帮助我得到什么是错的 整个文件在那里如果需要的话: Template.registerHelper("isGreaterThanZero", function(array) { check(array, Array) […]

JavaScript更好的导入钩子,而不通过相对文件夹导航

在我的文件夹结构中编写testing时,困扰着我的是以下内容: //App meteor/imports/api/tasks.js //test meteor/test/imports/api/tasks.test.js 所以现在当我从tasks.js中导入一些东西,我import { task } from '../../../imports/api/tasks.js' ,我的文件夹结构变得比这更大。 有更好的解决scheme吗? 我正在考虑导入钩子,也许在根testing目录中,所以我可以从那里导入所有的东西,当我在testing中,我可以从导入钩子导入,而不必做所有的事情../../../../导航。

访问meteor中的入站HTTP标头?

我正在开发一个依赖于浏览器在HTTP头文件中发送的数据的应用程序(这是没有办法的)。 这也恰好是我第一次使用基于node.js的东西,所以很可能我完全错过了一些简单的东西! 基本上我想要做的是从客户端调用服务器上的方法,并在该方法中读取客户端发送的HTTP头。