在我的课堂上,eslint抱怨“预期的’this’由类方法’getUrlParams’使用
这是我的课:
class PostSearch extends React.Component {
constructor(props) {
super(props);
this.getSearchResults();
}
getUrlParams(queryString) {
const hashes = queryString.slice(queryString.indexOf('?') + 1).split('&');
const params = {};
hashes.forEach((hash) => {
const [key, val] = hash.split('=');
params[key] = decodeURIComponent(val);
});
return params;
}
getSearchResults() {
const { terms, category } = this.getUrlParams(this.props.location.search);
this.props.dispatch(Actions.fetchPostsSearchResults(terms, category));
}
render() {
return (
<div>
<HorizontalLine />
<div className="container">
<Col md={9} xs={12}>
<h1 className="aboutHeader">Test</h1>
</Col>
<Col md={3} xs={12}>
<SideBar />
</Col>
</div>
</div>
);
}
}
解决此问题或重构此组件的最佳方法是什么?
您应该this
按ESLint错误将功能绑定到"Expected 'this' to be used by class method 'getUrlParams'
getUrlParams = (queryString) => { .... }
因为您没有getUrlParams
在渲染期间使用(如onClick()
),所以上述技术很好,我们可以称其为“类属性中箭头功能的用法”。
还有其他绑定方法:
this.getUrlParams=this.getUrlParams.bind(this)
onClick={()=>this.getUrlParams()}
假定函数没有参数。React.createClass
与ES6没有意义:)我已经读了很多关于这个错误的答案,但我没有找到解决方案,也许类对象不一样 我的错误是: 通用域名格式。谷歌。格森。JsonSyntaxException:java。lang.IllegalStateException:应为字符串,但为BEGIN_对象 所以,我只是想从JSON中获取一个对象,如下所示: 我的JsonObject是: 我的不同POJO(我不把get和set简称为代码): 这是完整的堆
出于某种原因,我在es6课上给“这个”取了个奇怪的值... null null 为什么clickers的click方法中的“this”指的是dom节点而不是...本身? 更重要的是,如果我不能使用“this”来做的话,我如何从它的click方法中引用clickers的count属性?
问题内容: 我有以下代码片段: 我期望结果为“ 987654321”,但是我得到“ 123456789”,就像方法setNumber没有任何效果,任何人都可以帮助我理解 问题答案: 您在方法内重新声明phoneNumber变量,使类中的字段处于阴影中,因此对局部变量所做的任何更改都不会在带阴影的类字段中显示。不要这样 摆脱重复变量声明,以便在字段中看到在方法内所做的更改。 例如,更改此: 对此:
通常创建对象来表示真实世界中的实体,如用户和订单等: let user = { name: "John", age: 30 }; 并且,在现实世界中,用户可以进行 操作:从购物车中挑选某物、登录和注销等。 在 JavaScript 中,行为(action)由属性中的函数来表示。 方法示例 刚开始,我们来教 user 说 hello: let user = { name: "John",
问题内容: 像这样:类具有一个称为sayHello()的方法。当该类的实例调用sayHello()时,另一个类中的方法会在调用sayHello()之前自动调用。 示例代码可以像这样: 输出结果: 似乎可以通过使用代理模式来完成。但我希望它可以更简单。 使用注释: 然后将MethodListener注释放在Person类中的方法sayHello()上, 调用具有MethodListener批注的方法
我正试图让在我的回调中执行。出于某种原因,onFailure会不断被调用,即使服务器返回200个代码,我也会获取全部数据。 我不确定必须做什么才能正确执行,以便解析JSON并将对象添加到列表视图中。 相关片段:- 请求接口:- 公共接口请求接口{ 服务器响应类: php代码:- functions.php: 数据库操作: 这是我在服务器上的回复: 这是堆栈跟踪和异常: [Ljava.lang.St