이 코드의 주된 목적은 데이터베이스에 데이터가 있으면 브라우저에서 페치 (fetch)하고 표시해야한다는 것입니다. 그러나 나는 그것을 발견 할 수 없었다.데이터가 Meteor의 클라이언트에서 서버로 전송되지 않음
문제는 서버로 데이터를 전송하는 것입니다.
유성을 실행하고 브라우저의 콘솔에서 값을 입력하면 브라우저에서 다시 볼 수 없습니다. 콘솔에서 "Tdos.find()"명령을 사용하여 찾을 수 있습니다. .fetch() ", 내가 입력 한 배열을 표시하지만 mongodb 콘솔에서 찾으려고하면 찾을 수 없습니다. 어떤 사람이 내 문제를 파악할 수 있습니까?
<head>
<title>simpletodos</title>
</head>
<body>
{{> todoList}}
</body>
<template name="todoList">
<h3>Todos</h3>
<ul>
{{#each tdos}}
{{> todo}}
{{/each}}
</ul>
<button class="add-todo">Add todo</button>
</template>
<template name="todo">
<li>
{{label}}
</li>
</template>
클라이언트/Main.js
if(Meteor.isClient) {
Template.todoList.helpers({
todos: function() {
return Tdos.find();
}
});
if(Meteor.isServer) {
}
}
서버/main.js 서버에서
import { Meteor } from 'meteor/meteor';
Tdos = new Mongo.Collection("tdos");
Meteor.startup(() => {
// code to run on server at startup
});
안녕하세요 Sravan, 귀하의 컬렉션은 서버와 클라이언트 모두에서 선언되어야합니다. collection.js 파일에서 컬렉션을 정의하는 경우 클라이언트 및 서버에서 사용할 수 있도록 설정해야합니다 (예 : lib 폴더) – Yann
내 폴더 구조를 표시하려고합니다. .Meteor -> 3 폴더 (클라이언트, 컬렉션, 서버). 클라이언트 (Main.html, Main.css, Main.js)에서. 수집 중 (Tdos.js (Collection Declaration)). 서버 (Main.js)에서. –
이제는 작동 중입니다. 제 질문에 대해 회신을 해주신 것에 대해 Yann에게 감사드립니다. –