导入文件结构和集合发布

时间:2016-09-07 23:54:57

标签: meteor

关于如何使用导入目录结构的Meteor文档,Example directory layout

//-------------- publication.js`
import {Vehicles} from '../vehicles.js';
 Meteor.publish('vehicles', function () {
    return Vehicles.find();
});

//-------------- carClass.jsx
import './vehicles/server/publications.js';
const composer = (props, onData) => {
  const subscription = Meteor.subscribe('vehicles');

  if (subscription.ready()) {
    const vehicle = Vehicles.findOne({name: 'jack'});
    onData(null, { vehicle });
  }
};

是否需要导出发布方法? 浏览器控制台错误说:

  

未捕获错误:找不到模块'./vehicles/server/publications.js'

如何修复此错误?感谢

enter image description here

2 个答案:

答案 0 :(得分:0)

问题是无法从./vehicles/server/publications.js文件访问路径carClass.jsx。您应该通过./server/publications.js

来引用它

答案 1 :(得分:0)

Meteor出版物是仅限服务器的代码,因此您无法在carClass.jsx中导入该脚本。

你应该有一些像{app root} /server/main.js这样的文件。您可以在此处导入您的出版物,以使其可供客户端脚本订阅。这个文件不在/ imports文件夹中是非常重要的,因此在服务器启动时会急切地加载它。