作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我对 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的文件中获取对象getSpousesCreditBerauElement
的代码:
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)
我收到的错误是:无法调用未定义的方法“getSpousesCreditBureau”
最佳答案
您实际上并未导出 AnalysisPage
并且未正确调用它。
导出类:
module.exports = AnalysisPage;
比较
module.exports = new AnalysisPage();
导出该类的实例。
<小时/>正确的调用方法是:
var instance = new AnalysisPage();
Util.verifyElementsAreDisplayed(instance.getSpousesCreditBureau());
(原问题已修改,代码为:)
var analysis = new AnalysisPage();
Util.verifyElementsAreDisplayed(AnalysisPage.getSpousesCreditBureau());
<小时/>
您可以仅导出实例,在这种情况下可以这样调用它:
var instance = require('./analysis.po.js');
Util.verifyElementsAreDisplayed(instance.getSpousesCreditBureau());
所以任何地方都没有new
。
关于javascript - 我收到 : Cannot call method 'someMethodName' of undefined when trying to access an object in a javascript clas,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29973968/
我是一名优秀的程序员,十分优秀!