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