Tôi không chắc mình hiểu vấn đề là gì. Tôi đoán nó là về các tuyên bố import
.
Trong nhiệm vụ ban đầu của bạn tập tin bạn có
import { Meteor } from 'meteor/meteor';
import { Mongo } from 'meteor/mongo';
import { check } from 'meteor/check';
Bạn cần những để sử dụng chức năng/đối tượng từ Meteor, Mongo và kiểm tra gói.
Bạn cần xem mã nào cần. Trong tệp methods.js
, bạn sử dụng Meteor
và check
, nhưng bạn không sử dụng Mongo
. Vì vậy, bạn muốn thêm
import { Meteor } from 'meteor/meteor';
import { check } from 'meteor/check';
Tôi cũng thấy rằng bạn khai báo bộ sưu tập Mongo của mình trong tệp publication.js
, thường không phù hợp. Một ấn bản chỉ nên chạy trên máy chủ, trong khi bộ sưu tập của bạn nên được khai báo cả trên máy khách và máy chủ.
Vì vậy, bạn nên di chuyển mã này
export const Tasks = new Mongo.Collection('tasks');
thường, nó sẽ đi trong file task.js
.
Trong trường hợp này, trong task.js
, như bạn đang tuyên bố một bộ sưu tập, bạn đang sử dụng các đối tượng Mongo và bạn cần phải
import { Mongo } from 'meteor/mongo';
Và trong ấn phẩm của bạn, cho thời điểm này bạn chỉ cần
import { Meteor } from 'meteor/meteor';
vẫn còn một vấn đề, khi bạn tuyên bố đối tượng nhiệm vụ sử dụng export
, bạn cần phải nhập nó giống như cách hơn bạn nhập Meteor, Mongo và kiểm tra, nhưng khi gói của riêng bạn:
012.
import { Tasks } from './tasks';
cho các tệp trong cùng một thư mục so với tệp tasks.js
. Và
import { Tasks } from '../tasks';
nếu nó nằm trong thư mục con.
Điều này có giải đáp được câu hỏi của bạn không? Nếu bạn cần thêm trợ giúp, vui lòng cụ thể hơn và/hoặc bao gồm một số nhật ký lỗi.
Tôi hiểu sao băng 1.2 khá tốt và đã tạo ra một ứng dụng khá lớn với nó. Bây giờ tôi đang cố gắng tìm hiểu 4 thứ cấu trúc ứng dụng quy mô lớn cho 1,3, nhập/xuất, React và Mocha này. Cảm ơn bạn đã giải quyết sự phức tạp Tôi đã có "Các phương pháp và ấn bản tiêu chuẩn không xuất bất kỳ biểu tượng nào .. [nhập] tệp" #. Tôi đã thử đặt 'import './server/publications.js'; import './methods.js'; 'vào tệp tasks.js là không đủ để thực hiện việc truyền tasks.tests.js. Bây giờ hãy thử đề xuất của bạn. – Falieson
Về cấu trúc ứng dụng quy mô lớn: Nghiên cứu tôi đã thực hiện kết luận giống như bạn đã nói - không có tiêu chuẩn, vì vậy tôi nghĩ tôi sẽ sử dụng Meteor's. – Falieson
Trong hướng dẫn, tasks.tests.js chỉ nhập Nhiệm vụ từ './tasks.js'. Nhập {Tasks} từ './collections.js' và nhập './methods.js' mã trùng lặp mà tôi đặt trong cả hai task.js và tasks.tests.js? [tasks.js] của tôi (https://github.com/Falieson/LearningReact/blob/meteor_todos/MeteorTodos_React/imports/api/tasks/tasks.js) và [tasks.tests.js] (https: // github .com/Falieson/LearningReact/blob/meteor_todos/MeteorTodos_React/import/api/tasks/tasks.tests.js) – Falieson