2011-08-28 8 views
0

こんにちは私は玉の中に組み込まれたいくつかのjavascript関数を使用しようとしていますが、エラーが発生します。あなたはタブとスペースを混合のように見えますObject tag1,,,,,,,,tag2 has no method 'split'jade in jade

+0

tagsは、投稿 – rabidmachine9

+0

という名前の配列内の文字列です。 ' - console.log(typeof tags)'です。コマンドラインでは何を出力しますか? – Seth

答えて

1

:私はエラーを取得する

- each post in posts 
      li(class: 'user-') #{post.created} #{post.body} #{post.title} #{post.tags} #{post._id} 
      - var tags = post.tags 
      - tags.split(' ') 
      - each tag in tags  
      li(class : 'tags') #{tags.tag} 

: は、ここでは、コードです。 Jade.jsは2つのスペースの規則に強く従います.tetnのタブはパーサを台無しにします。タブを削除するとすべてがうまく動作します。

- each post in posts 
    li(class: 'user-') #{post.created} #{post.body} #{post.title} #{post.tags} #{post._id} 
    - var tags = post.tags.split(' ') 
    - each tag in tags 
    li(class : 'tags') #{tags.tag} 

.jadeファイルをレンダリングするJavascript。

var jade = require('jade'); 

var options = { 
    locals: { 
     posts:[{ 
       created:'today', 
       tags:'1 2 3' 
      }]  
    } 
}; 

jade.renderFile(__dirname + '/each.jade', options, function(err, html){ 
    if (err) throw err; 
    console.log(html); 
}); 

変数をローカル変数に渡していることを確認してください。