2017-02-09 2 views
1

ここからMeteor.comのWebサイトにリダイレクトされました。私はこのJavascriptライブラリを初めて使い慣れており、どのように動作するかについての概念的枠組みを持っているうちに、実際の世界の経験を得たいと思っていました。残念ながら、Meteor.comが提供するチュートリアルと現在ダウンロードしている実際のコードは全く異なります。最初は、すべてのjsが1つのファイルにあり、今度はサーバー機能と残りのjsが2つの別々のファイルに分割されています。私は2つの新しいjsファイル私は私の最初のコレクションを作成するには、コードのこの部分を追加します:このコードはMeteorの新しいファイル構造のどこに配置しますか?

import { Template } from 'meteor/templating'; 
import { ReactiveVar } from 'meteor/reactive-var'; 

import './main.html'; 

Template.hello.onCreated(function helloOnCreated() { 
    // counter starts at 0 
    this.counter = new ReactiveVar(0); 
}); 

Template.hello.helpers({ 
    counter() { 
    return Template.instance().counter.get(); 
    }, 
}); 

// templates can have helpers which are just functions and events and this 
// particular event is a click event 
Template.hello.events({ 
    'click button'(event, instance) { 
    // increment the counter when button is clicked 
    instance.counter.set(instance.counter.get() + 1); 
    }, 
}); 

サーバ側main.jsファイル:

Tasks = new.Mongo.Collection('tasks') 

クライアント側main.jsファイルには、次のようになります

import { Meteor } from 'meteor/meteor'; 

Meteor.startup(() => { 
    // code to run on server at startup 
}); 

Meteor.jsでは、フロントエンドとバックエンドのどこからでもデータベースにアクセスできるため、Meteor.jsではサーバー側に移行することはできません。それはもちろんサーバ上にありますが、Mini-Mongoというブラウザでも動作します。そうですか:a)jsファイルにこのコードを入れても問題ないか、またはb)ベストプラクティスとしてサーバー側に行くのですか?

これは私が流星の世界ではっきりしていないことです。みんなありがとう。

答えて

1

ので、流星のアプリケーションを構築するために、現在の推奨される方法は、彼らが特別でない限り、流星はそれでファイルを無視することを意味している輸入ディレクトリが「熱心に」(ロードされていない

に「輸入」ディレクトリを使用することです輸入された)。

あなたが(クライアントまたはサーバ側のいずれかに)アプリケーション内のTasksコレクションを参照するたびMongoのコレクションは、あなたがして、ファイルにコレクションをインポート

次にimports/api/tasks/tasks.jsファイルにあるであろう定義するコードのあなたのライン

import { Tasks } from '/imports/api/tasks/tasks'; 

Here is a great article from TheMeteorChef that explains the imports directory well!

:これをやって
関連する問題