如何在node.js中使用原型

时间:2012-01-20 17:46:46

标签: javascript node.js module prototype

我在nodejs上写了第一个模块。我需要从谷歌缓存解析我的网站。邮政是表格的地图。当我尝试使用这个模块时,我有这个错误:" TypeError:无法设置属性' prototype'未定义" 如何修复此错误?这是我的代码:

module.exports = function Post(documentDOM,options)
{
    this.opts = $.extend({id:0,author_id:0},options);
    this.doc = documentDOM;
    this.post  = {
        id: 0,
        name: '',
        alt_name: '',
        notice: '',
        content: '',
        author: '',
        author_id: 0,
    };
}

module.exports.Post.prototype = {
    init: function() {
        this.post.id = this.opts.id;
        this.post.author_id = this.opts.author_id;
    },

    content: function() {
        content = this.doc.find('.fullnews-content').html();
        if(!content.length)
            content = doc.find('.article-content').html();
        return content;
    }
}

感谢。

1 个答案:

答案 0 :(得分:6)

module.exports = function Post((documentDOM,options)

我认为你的意思是

module.exports.Post = function((documentDOM,options)

然后像这样访问它

var Post = require('./post.js').Post;

首先,您将exports本身设为命名函数,要修改它,您将使用module.exports.prototype

相关学习资料:http://kangax.github.com/nfe/