1

MeteorとThree.jsを使用してアプリケーションを構築しようとしていますが、残念ながら2つの部分を結合するのにかなり失敗しました。

Three.jsは、クライアント側でWebGLを視覚化するためのライブラリです。どういうわけか、Meteorで正しく参照できません。

.jsを/publicに配置した場合、Meteorはそれをまったく検出しないか、エラーが発生します。

ReferenceError:自己はapp /Three.js:2:47で定義されていません

他のフォルダに置いたとき。

どうしてなのか本当にわからない…ありがとう!

4

4 に答える 4

1

meteor パッケージを作成する必要があると思います。これらの質問とそれらが提供するリンクを確認することをお勧めします。

meteor d3 パッケージの作成

Meteor パッケージのビルド方法

于 2012-11-21T20:53:29.047 に答える
1

すべての隕石パッケージがうまくいかなかったので、別のアプローチを取りました。引き続き meteor パッケージを作成できます。または、プロジェクト構造を単独で使用することもできます。流星のドキュメントでは、これを読むことができます:

「サブディレクトリ内のファイルは親ディレクトリ内のファイルの前にロードされるため、最も深いサブディレクトリ内のファイルが最初にロードされ (lib の後)、ルート ディレクトリ内のファイルが最後にロードされます (main.* 以外)。」

そこで私がしたことは、クライアント フォルダーの最も深いサブディレクトリに lib フォルダーを作成し、そこに three.js ファイルを配置することでした。ファイルの先頭に、グローバル定義があります。

var 3 = 3 || { リビジョン: '60' };

その後、次のように window オブジェクトに追加する必要があります。

window.THREE = THREE;

それでおしまい。これで、three.js を使用できるようになりました。three.js の他のライブラリが必要な場合は、three.js より上位のディレクトリにそれらを配置するだけです。

(私の英語について申し訳ありません、私はそれがひどいことを知っています)

于 2013-08-19T19:02:55.513 に答える
0

数日間 Meteor をいじってみると、使用したいライブラリのパッケージを常に用意しておく必要はないことがわかりました。このソリューションがすべてに役立つとは言えませんが、ハッカーなしで three.js を使用できるようになりました。

にファイルを配置し、クライアント フォルダー内に新しいファイルを作成します。three.min.jsファイル内に次のコードを入力します。client/compatibilitymain.jsmain.js

Meteor.startup(function() {
    // your three code here.
});

そしてビオラ!これは完全にうまくいくはずです。three.js r71 と meteor v1.1.0.2 を使用しています

于 2015-06-12T06:03:44.690 に答える
0

私は同じ問題を抱えています。最終的に、誰かがすでに Atmosphere で Three.js をパッケージ化していることに気付きました。

https://atmosphere.meteor.com/package/three.js

隕石をインストールして実行するだけ

mrt add three.js

これで three.js パッケージがプロジェクトに追加されます。解決しました!

于 2013-11-08T07:38:31.063 に答える