我得到:无法调用方法';someMethodName';尝试访问javascript clas中的对象时的未定义

我得到:无法调用方法';someMethodName';尝试访问javascript clas中的对象时的未定义,javascript,Javascript,我几乎是JavaScript新手,我正在尝试访问类中的对象。这是我在analysis.po.js文件中的类定义: var AnalysisPage = function () { (some code here) this.getSpousesCreditBureau = function() { return { pdScore: getSpousesCreditBureauElement('pdScore'),

我几乎是JavaScript新手,我正在尝试访问类中的对象。这是我在analysis.po.js文件中的类定义:

var AnalysisPage = function () {
    (some  code here)
    this.getSpousesCreditBureau = function() {
        return {
            pdScore: getSpousesCreditBureauElement('pdScore'),
            qualification: getSpousesCreditBureauElement('qualification'),
            estimatedFee: getSpousesCreditBureauElement('estimatedFee'),
            currentDebt:  getSpousesCreditBureauElement('currentDebt'),
            maxDebt: getSpousesCreditBureauElement('maxDebt'),
            arrears: getSpousesCreditBureauElement('arrears'),
            segment: getSpousesCreditBureauElement('segment'),
            bpGlobalRisk: getSpousesCreditBureauElement('bpGlobalRisk'),
            groupGlobalRisk:  getSpousesCreditBureauElement('groupGlobalRisk')
        };
    };
    (some other code here)
};
module.exports = new AnalysisPage();
这是一段代码,我尝试在另一个名为analysis.spec.js的文件中获取对象
GetSpoosesCreditBerauElement

var App = require('../app.po.js'),
    Util = require('../util.js'),
    AnalysisPage = require('./analysis.po.js'),
    AnalysisData = require('./analysis.data.js');
(some code here)
var analysis = new AnalysisPage();
Util.verifyElementsAreDisplayed(analysis.getSpousesCreditBureau());
(some other code here)
我得到的错误是: 无法调用未定义的方法“GetSpoosesCreditBureau”

是否尝试:

var analysis = new AnalysisPage();
Util.verifyElementsAreDisplayed(analysis.getSpousesCreditBureau());
当您像这样访问AnalysisPage.GetSpoosesCreditBureau()这样的方法时,您不是在访问实例,而是在访问类定义。

您尝试过:

var analysis = new AnalysisPage();
Util.verifyElementsAreDisplayed(analysis.getSpousesCreditBureau());
当您像这样访问AnalysisPage.GetSpoosesCreditBureau()这样的方法时,您不是在访问实例,而是在访问类定义。

您尝试过:

var analysis = new AnalysisPage();
Util.verifyElementsAreDisplayed(analysis.getSpousesCreditBureau());
当您像这样访问AnalysisPage.GetSpoosesCreditBureau()这样的方法时,您不是在访问实例,而是在访问类定义。

您尝试过:

var analysis = new AnalysisPage();
Util.verifyElementsAreDisplayed(analysis.getSpousesCreditBureau());

当您像这样访问AnalysisPage.GetSpoosesCreditBureau()方法时,您不是在访问实例,而是在访问类定义。

您不是在实际导出AnalysisPage,也不是在正确调用它


使用以下内容导出类:

module.exports = AnalysisPage;
相比之下

module.exports = new AnalysisPage();
导出类的实例


正确的称呼方式是:

var instance = new AnalysisPage();
Util.verifyElementsAreDisplayed(instance.getSpousesCreditBureau());
(原始问题已修改,代码为:)


您可以只导出实例,在这种情况下,可以像这样调用它:

var instance = require('./analysis.po.js');
Util.verifyElementsAreDisplayed(instance.getSpousesCreditBureau());

因此,任何地方都没有新的

您实际上没有导出
分析页面
,也没有正确调用它


使用以下内容导出类:

module.exports = AnalysisPage;
相比之下

module.exports = new AnalysisPage();
导出类的实例


正确的称呼方式是:

var instance = new AnalysisPage();
Util.verifyElementsAreDisplayed(instance.getSpousesCreditBureau());
(原始问题已修改,代码为:)


您可以只导出实例,在这种情况下,可以像这样调用它:

var instance = require('./analysis.po.js');
Util.verifyElementsAreDisplayed(instance.getSpousesCreditBureau());

因此,任何地方都没有新的

您实际上没有导出
分析页面
,也没有正确调用它


使用以下内容导出类:

module.exports = AnalysisPage;
相比之下

module.exports = new AnalysisPage();
导出类的实例


正确的称呼方式是:

var instance = new AnalysisPage();
Util.verifyElementsAreDisplayed(instance.getSpousesCreditBureau());
(原始问题已修改,代码为:)


您可以只导出实例,在这种情况下,可以像这样调用它:

var instance = require('./analysis.po.js');
Util.verifyElementsAreDisplayed(instance.getSpousesCreditBureau());

因此,任何地方都没有新的

您实际上没有导出
分析页面
,也没有正确调用它


使用以下内容导出类:

module.exports = AnalysisPage;
相比之下

module.exports = new AnalysisPage();
导出类的实例


正确的称呼方式是:

var instance = new AnalysisPage();
Util.verifyElementsAreDisplayed(instance.getSpousesCreditBureau());
(原始问题已修改,代码为:)


您可以只导出实例,在这种情况下,可以像这样调用它:

var instance = require('./analysis.po.js');
Util.verifyElementsAreDisplayed(instance.getSpousesCreditBureau());

因此,任何地方都没有新的代码。

你为什么要在帖子中修改代码,这是一个打字错误?如果没有,让原始代码让人们看看发生了什么。因为您是Javascript新手,我建议您阅读。简而言之,Javascript没有类(是的,有语法糖来模仿它们),但您应该了解Javascript如何处理这些类。这会帮你省去很多麻烦。是的,这是我的错。我真的很抱歉。这是在尝试另一种方法时发生的,但当前的代码就是导致此问题的代码。简而言之,如果您希望AnalysisPage实例具有方法
GetSpoosesCreditBureau()
,则需要在AnalysisPage的原型上定义该方法,而不是在AnalysisPage构造函数中。你可以这样做:
AnalysisPage.prototype.GetSpoosesCreditBureau=function(){…
为什么你在帖子中修复了代码,这是一个打字错误?如果不是,让原始代码让人们看看发生了什么。因为你是Javascript新手,我建议你阅读。简而言之,Javascript没有类(是的,有语法上的糖来模仿它们)但是你应该了解Javascript是如何处理这个问题的。这将为你省去很多麻烦。是的,这是我的错误。我真的很抱歉。这是在尝试另一种方法时发生的,但当前的代码是给我带来这个问题的代码。简言之,如果你想让AnalysisPage的实例具有方法
GetSpoosesCreditBureau()
,您需要在AnalysisPage的原型上定义该方法,而不是在AnalysisPage构造函数中。您可以这样做:
AnalysisPage.prototype.GetSpoosesCreditBureau=function(){…
为什么你在帖子中修改了代码,这是一个拼写错误?如果不是,让人们看看原始代码发生了什么。因为你是Javascript新手,我建议你阅读。简而言之,Javascript没有类(是的,有语法糖来模仿它们)但是你应该了解Javascript是如何处理这个问题的。这将为你省去很多麻烦。是的,这是我的错误。我真的很抱歉。这是在尝试另一种方法时发生的,但当前的代码是给我带来这个问题的代码。简言之,如果你想让AnalysisPage的实例具有方法
GetSpoosesCreditBureau()
,您需要在AnalysisPage的原型上定义该方法,而不是在AnalysisPage构造函数中。您可以这样做:
AnalysisPage.prototype.GetSpoosesCreditBureau=function(){…
为什么你在帖子中修改了代码,这是一个拼写错误?如果不是,让人们看看原始代码发生了什么。因为你是Javascript新手,我建议你阅读。简而言之,Javascript没有类(是的,有语法糖来模仿它们)但是你应该了解Javascript是如何处理这个问题的。这将为你省去很多麻烦。是的,这是我的错误。我真的很抱歉。这是在尝试另一种方法时发生的,但当前的代码是给我带来这个问题的代码。简言之,如果你想让AnalysisPage的实例具有方法
GetSpoosesCreditBureau()
,您需要定义