2012-04-12 6 views
0

私は有望なmeteorフレームワークで遊んでいて、壁に当たっています。テンプレートのどこにでも{{#if something}}{{/if}}を挿入すると、空のページがレンダリングされます。メテオテンプレートに#ifスペースバータグを挿入すると、空のページが表示されるのはなぜですか?

<head> 
    <title>MUse - XUse on Meteor</title> 
</head> 

<body> 
    {{> menu}} {{> login }} 
    {{> hello}} 
</body> 

<template name="hello"> 
    <div class="hello"> 
     <h1>This is Xuse on Meteor a.k.a. <em>MUse</em></h1> 
    </div> 
</template> 


<template name="login"> 
    <div class="login"> 
     <label for="username">Login:</label> 
     <input type="text" id="username" value="" placeholder="Login"/> 
     <label>Password:</label> 
     <input type="password" id="password" value="" placeholder="Password"/> 
     <input type="button" id="signin" name="signin" value="Sign in" /> 
    </div> 
</template> 

<template name="dashboard"> 
    <div class="dashboard"> 
     Hi, {{login_name}}. 
    </div> 
</template> 

<template name="menu"> 
    <nav> 
     <a href="/#dashboard">Dashboard</a> | 
     <a href="/#logout">Log out</a> | 
     {{#if login_name}} 
     <a href="/#{{login_name}}">{{login_name}}</a> 
     {{/if}} 
    </nav> 
</template> 

そして、念のためcoffeescriptコード: - 何よりも

if Meteor.is_client 
    Template.hello.greeting = -> "Welcome to muse." 

    Template.login.events = 
    'click #signin' : -> 
     console.log "You pressed the 'sign in' button" if console? 
     login_name = $('#username').val() 
     password = $('#password').val() 
     console.log "Credentials: #{login_name} -> #{password}" if console? 

    Template.menu.events = 
    'click a[href*="dashboard"]' : -> 
     console.log "Menu -> Dashboard invoked" if console? 
    'click a[href*="logout"]' : -> 
     console.log "Menu -> Log out invoked" if console? 

if Meteor.is_server 
    Meteor.startup -> 
    time = new Date 
    console.log "#{time} Hi. This is server" if console? 

すべてだこのテンプレートを考えてみましょう。 {{#if...}}シーケンスを削除すると、適切なレンダリングが行われます。レンダリングが正しく行われたり、どこにでも配置されると、空のページがレンダリングされます。どんな手掛かり?

私はtodosの例を試しましたが、これはまったく同じマシン上で動作していたので、これはインストールの問題ではありません。ところで、マシンはUbuntu 12.04を搭載した不慣れな古いノートパソコンAsus A6Rpです。 CoffeeScriptの上に存在しない100%

Template.menu.login_name = function() { 
    return $('#username').val(); 
}; 

が、私は、あなたが画像を取得すると確信している:あなたがここに、正しいテンプレートにもコーヒースクリプトでのlogin_nameを定義する必要が

答えて

2

は、JavaScriptでの例です

Template.menu.login_name = -> $('#username').val() 
+0

ありがとうございました。 – Rajish

関連する問題