Meteor 1.3更新迁移



我只是在完成1.3的更新,不知道如何处理这个错误。我认为这可能与1.3中文件加载顺序的更改有关。有什么想法吗?谢谢

W20160407-09:54:43.528(1)? (STDERR) /Users/technical/.meteor/packages/meteor-tool/.1.3.1.10rlef4++os.osx.x86_64+web.browser+web.cordova/mt-os.osx.x86_64/dev_bundle/server-lib/node_modules/fibers/future.js:267
W20160407-09:54:43.528(1)? (STDERR)                         throw(ex);
W20160407-09:54:43.528(1)? (STDERR)                               ^
W20160407-09:54:43.553(1)? (STDERR) TypeError: Cannot read property 'path' of undefined
W20160407-09:54:43.553(1)? (STDERR)     at Routing (packages/lookback:emails/lib/routing.js:17:9)
W20160407-09:54:43.554(1)? (STDERR)     at packages/lookback:emails/lib/mailer.js:279:11
W20160407-09:54:43.554(1)? (STDERR)     at Array.forEach (native)
W20160407-09:54:43.554(1)? (STDERR)     at packages/lookback:emails/lib/mailer.js:278:28
W20160407-09:54:43.554(1)? (STDERR)     at Function._.each._.forEach (packages/underscore.js:147:22)
W20160407-09:54:43.554(1)? (STDERR)     at Object.init (packages/lookback:emails/lib/mailer.js:274:9)
W20160407-09:54:43.554(1)? (STDERR)     at Object.Mailer.init (packages/lookback:emails/lib/mailer.js:303:7)
W20160407-09:54:43.554(1)? (STDERR)     at app/server/lib/config/config.js:72:8
W20160407-09:54:43.554(1)? (STDERR)     at /Users/technical/code/mssc1.3/.meteor/local/build/programs/server/boot.js:290:5

server/lib/config/config.js

Meteor.startup(function() {
this.Templates = {}
Templates.remindEventEmail = {
    path: 'remindEventEmail.html'
};
Mailer.init({
    templates: Templates
    });
});

private/remindEventEmail.html

<p>Email code<p>

这不是1.3的东西,而是0.7.0的

如果你不需要电子邮件预览,只需设置

Mailer.config({
  addRoutes: false
});

可能会解决你的问题。

否则,请遵循我如何将其与Flow Router 一起使用

根据:

您现在需要在模板对象上提供一个路由字段

https://github.com/lookback/meteor-emails#version-历史

route: {
path: '/sample/:name',
// params is an object, with potentially named parameters, and a `query` property
// for a potential query string.
data: function(params) {
  // `this` is the HTTP response object.
  return {
    name: params.name // instead of this.params.name
  };
}
}

所以你的

Templates.remindEventEmail = {
    path: 'remindEventEmail.html'
};

应该成为

Templates.remindEventEmail = {
  path: 'remindEventEmail.html'
  route: {
    path: '/event/:_id/remind',
    data: function(params) {
      return {
        event: Events.findOne(params._id);
      }
    }
  }
};

那么实际的路由将是/emails/event/:_id/提醒

请注意数据模式,您可能会使用另一种类型的查询或嵌套主数据上下文

最新更新