Articles of 铁路由器

在Meteor应用程序中调用Accounts.createUser Iron-Router端点正在给net :: ERR_EMPTY_RESPONSE

我有一个meteor应用程序,它的客户端js对我的应用程序公开的API(使用Iron-Router实现的服务器端)进行jQuery ajax GET调用。 客户端: $.get('email/test@test.com/transaction/?transactionId=12344', function (data) { console.log(data); }); 服务器端API: Router.route('/email/:email/transaction',{where: 'server'}) .get(function(){ let email = this.params.email; let transactionId = this.params.query.transactionId; if(email === undefined) { let response = { "error" : true, "message" : "Email required" }; this.response.setHeader('Content-Type', 'application/json'); this.response.statusCode = 403; this.response.end(JSON.stringify(response)); return; } // Create the user let user = Accounts.findUserByEmail(email); if(user […]

JS内部不能访问铁路由器数据

我的模板渲染数据没有任何问题,但如果我尝试访问它在我的JS脚本我得到null或undefined …这是我的代码 铁路由器 @route 'responder', path: '/quesabesde/:_screenName' yieldTemplates: responderContent: to: "mainContent" responderHeader: to: "mainHeader" waitOn: -> @subscribe 'getPreguntas', @params._screenName data: -> Preguntas.findOne({owner: @params._screenName}) 具有NULL结果的模板脚本 Template.responderContent.rendered = -> console.log(@data) 模板HTML工作 {{#each level}} <h1>{{title}}</h1> {{/each}} 我在控制台上得到null …但正如我说我的模板渲染它确定。 我想访问我的脚本中的数据,以设置会话和操作数据用于其他目的

在login之后,铁路路由器中的未定义Meteor.userId()

当用户第一次login时加载站点,然后login,下面定义的路由account将parsing为/profile/null 。 用户必须在path正确之前刷新站点。 this.route('account', { template: 'profile', path: '/profile/' + Meteor.userId() }) 创build一个路由,特别是采取参数Meteor.userId()的原因是因为我使用的包 ,需要我定义的path名,即: {{> ionTab title="Account" path="account"}}我不认为可以采取一个参数。 有什么更好的方法来完善这条路线?

在Iron Routermeteor中覆盖路由

我尝试了两种方法。 首先是定义一个具有相同模式的新路线,但它给我错误说“path已经存在”。 然后,我也尝试从路由器中获取现有的RouteController并对其进行更改,但是操作并不顺利 具体来说,我想在项目望远镜中覆盖下面的路线。 https://github.com/TelescopeJS/Telescope/blob/master/packages/telescope-posts/lib/routes.js#L159-L162

Meteor的Iron Router:在客户端和服务器端获得查询参数

那里 在我的应用程序中,如果有人在URL上传递参数,我想在模板上做不同的事情。 我知道我可以在服务器端使用this.params.query查询string,但我怎么可以传递给客户端或在客户端获取此值? 在我的情况下,我会发送一个可选的redirect的URL,如果它通过,主任务后,我的应用程序将redirect到给定的url的用户。 但是我只知道如何在服务器端看到redirect ,而不是在客户端,所以当我提交表单时,这些信息就会丢失 你可以帮帮我吗?

铁路由器模板数据呈现callback

我传递一个数据对象到一个模板与铁路由器,但想访问Template.name.rendered = function() { … }callback内的数据。 从meteor数据上下文铁路由器我试过UI.getData()但收到一个错误There is no current view 。 使用this.data将返回null。 我怎样才能访问从呈现的callback传递给模板的数据对象?

pipe理员login时如何才能访问其他网页

如何在pipe理员login时访问其他页面。单击其他链接时始终显示仪表板页面。 你能检查我的代码吗? Router.onBeforeAction(function() { if (!Meteor.user()) { this.render('login'); } else { this.render('dashboard'); } }); Router.route('users', function() { this.render('users'); }); Router.route('orders', function() { this.render('orders'); }); 注:当我点击用户和订单的链接,它显示我的仪表板。

铁路由器使用Meteor.call抛出的动作writeHead不是一个函数

我试图写一个从服务器返回到客户端响应的缓冲区。 因此,我定义了一个在action函数上运行获取文件的path: Router.route('/download/:blabla', { name: 'download', action: function () { var that = this.response; Meteor.call('downloadFile', blabla, function (err, result) { // error check etc. var headers = { 'Content-type' : 'application/octet-stream', 'Content-Disposition' : 'attachment; filename=' + fileName }; that.writeHead(200, headers); that.end(result); } } }); 这抛出: 传递调用“downloadFile”结果的exception:TypeError:that.writeHead不是函数 没有Metoer.call它的作品… 我使用nodejsstream来获取服务器端的缓冲区function,它的工作原理。 提前致谢

Meteor.js公共文件夹不提供.html文件

我有一个Google的.html文件,需要在http://www.domain.com/google1234567890123456.html 。 我将.html文件放到pathToMeteorApp/public/但是当我访问那个URL时,Meteor用一些模板为我提供了一个空白页面。 我正在使用iron-router ,所以即使.html文件在公共文件夹中,路由器是否仍然可以pipe理.html文件的url? 如果是这样,我们如何防止并直接在该URL提供.html文件? router.js

在meteor中通过路由器填充模板

我有一个meteor应用程序。 我创build了一个收集Messages 。 我用服务器发布消息 Meteor.publish("messages", function () { return Messages.find({'isDeleted': {$ne : true}}, {sort: {createdAt: -1}}); }); 我用iron-router : this.route('messages', { path: '/messages', template: 'messages', waitOn: function() { return Meteor.subscribe('messages'); }, data: function() { return Messages.find({}, {sort: {createdAt: -1}}); } }); 有了这个函数,我使用data: …但我仍然需要在messages.js使用助手来实际获取数据: Template.messages.helpers({ messages: function() { return Messages.find({}, {sort: {createdAt: -1}}); }, }); 现在我准备好使用模板中的消息了 […]