1

私は隕石を初めて使用し、マルチページアプリケーションを実行しようとしていhttp://www.mydomain.com/page1ますが、http://www.mydomain.com/page2.
まったく違うということは、クライアントがページをレンダリングしたくないということです。
meteor-router を使用しようとしましたが、得られたのは次のようなものです。

<!DOCTYPE html>
<html>
<head>
  <link rel="stylesheet" href="/myapp.css?9297ad4aa173c4e0c19aebd27c62a5c43242bb93">


<script type="text/javascript">
__meteor_runtime_config__ = {"ROOT_URL":"http://localhost:3000","serverId":"iMp4kgzzeqDtktJoY"};
</script>

  <script type="text/javascript" src="/packages/underscore/underscore.js?6d71e6711255f43c0de8090f2c8b9f60534a699b"></script>
  <script type="text/javascript" src="/packages/meteor/client_environment.js?07a7cfbe7a2389cf9855c7db833f12202a656c6b"></script>
  <script type="text/javascript" src="/packages/meteor/helpers.js?2968aa157e0a16667da224b8aa48edb17fbccf7c"></script>
...
...MANY MANY MANY SCRIPTS.... ?!?
...
...
  <script type="text/javascript" src="/myapp.js?2866dcdb5c828b129cdd3b2498a4bf65da9ea43f"></script>


<title>myapp</title>
</head>
<body>

</body>
</html>

そして、これは私が望むものではありません。私は page1 ルートが私を返すことを望みます:

<!DOCTYPE html>
<html>
<head>
    My meta tags
</head>
<body>
    page1
</body>
</html>

そして、page2 が異なるコンテンツの異なるメタ タグを返すようにします。
明確にするために、私のクライアントが時々 JavaScript を持っていないと仮定しましょう。meteor が適切なフレームワークであるかどうかについては質問しません。私は流星でこれを行うことができるかどうかだけ尋ねています。

4

1 に答える 1

2

Meteor の動作は、従来の LAMP スタックとは少し異なります。基本的には、Web ページ全体を再ダウンロードするのではなく、変更が必要な場所にのみ DOM をパッチすることで機能します。これにより、最新の Web ブラウザーで非常に満足のいくエンド ユーザー エクスペリエンスが実現します。

meteor router を使用するには、さまざまなページの新しいデータを{{renderPage}}. 次のようなものを使用できます

<head>
    <title>xx</title>
</head>

<body>
{{renderPage}}
</body>

<template name="page1">
    <h2>Hello!</h2>
</template>

<template name="page2">
    <h2>Ola!</h2>
</template>

ここで、クライアント側の JavaScript でルーターを定義する必要があります。

Meteor.Router.add({
    '/page1': 'page1',
    '/page2': 'page2'
});

したがって、ロード/page1すると、Hello! が表示されます。ロード/page2すると、Ola が表示されます。で定義されているように<template name="page2">..</template>

メタ タグを作成するには、javascript を使用する必要があります。のようなもので

$('head').append("<meta...");

繰り返しますが、これは好みによって異なりますが、個人的には、これらのタイプのアプリは、他の「シン」ベースの Web サイトと比較して、Web ページ間で途方もなく高速に読み込まれることがわかります。(meteor.com を見て、ページ間をどれだけ速く交換できるかを確認してください)。ただし、ブラウザには JavaScript が必要です。

プロダクション モードでは、スクリプト タグが 1 つしかないことに注意してください。

于 2013-05-05T20:02:47.670 に答える