【问题标题】:javascript in jade玉石中的 javascript
【发布时间】:2011-08-28 18:05:21
【问题描述】:

您好,我正在尝试使用 Jade 中内置的一些 javascript 函数,但出现错误。 代码如下:

 - 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}

我收到错误:Object tag1,,,,,,,,tag2 has no method 'split'

【问题讨论】:

  • tags 是一个名为 posts 的数组中的字符串
  • 试试- console.log(typeof tags)。它在命令行中输出什么?

标签: javascript node.js pug


【解决方案1】:

看起来你混合了制表符和空格。 Jade.js 强烈遵循 2 空格约定,并且制表符会扰乱解析器。删除标签对我来说一切正常。

- 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);
});

只需确保将 tags 变量传递给局部变量即可。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-06-02
    • 2015-01-22
    • 1970-01-01
    • 1970-01-01
    • 2016-04-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多