【问题标题】:TypeError: Object #<Object> has no method 'run'类型错误:对象 #<Object> 没有方法“运行”
【发布时间】:2014-04-06 04:55:18
【问题描述】:

Done 函数中,err 对象有一个错误,即 "TypeError: Object # has no method 'run' in file 'http://code.jquery.com/jquery.js'"。

 var jsdom = require('jsdom-nogyp');

jsdom.env({
    html: '<html><body></body></html>',
    scripts: ['http://code.jquery.com/jquery.js'],
    done: function (err, window) {
        if (err)
            throw (err);
        var $ = window.jQuery;

        $('body').append("<div class='testing'>Hello World</div>");
        console.log($(".testing").text()); // outputs Hello World
    }
});

【问题讨论】:

    标签: node.js jsdom


    【解决方案1】:

    jsdom-nogyp 从依赖项中取出了contextify,这是jsdom 用来运行脚本的。所以请改用真正的jsdom

    npm install jsdom
    

    还有:

    var jsdom = require('jsdom');
    

    【讨论】:

    • 不幸的是,我希望在 Windows 上托管,因为我的堆栈的其他区域在这样的操作系统中得到更好的服务。有什么方法可以让带有 contextify 的 JSDOM 在 Windows 上运行的节点上站起来?
    • 我不在 Windows 上进行开发。这个question 可能会有所帮助,并且可能还有其他关于 SO 的问题可能会有所帮助。
    猜你喜欢
    • 2014-01-08
    • 2013-04-19
    • 2012-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多