我是新来的。来自.Net背景,我试图创建一个类,我尝试了很多方法,但在这种情况下我无法在这个变体中创建一个构造函数并得出结论这可能不是一个班级,我在网上搜索但没有找到任何信息
以下是一个例子:
export default ViewTestStuff => {
constructor(){
// errors
}
return (
<div>
<p>Hello</p>
</div>
)
}
所以我的问题是这个例子中的“=&gt; {}”,这是一个类吗?如果它确实是一个类
,为什么我不能在其中创建一个构造函数答案 0 :(得分:1)
它是来自es6的箭头函数,与React.js
无关const add = (a, b) => a+b;
这只是一个功能。
调用add(2, 3)
会返回5
要记住的一件重要事情是,箭头函数没有原型链。您也无法使用new
与他们通话。
另一件需要注意的事情是,this
绑定到定义箭头函数的上下文。
const obj = {
name: "Lukas",
method: function() {
var self = this;
console.log(this.name === "Lukas");
return [
function() {
console.log(this !== self)
},
() => {
console.log(this === self)
}
];
}
}
const [func, arrow] = obj.method();
func();
arrow();
答案 1 :(得分:1)
这是一个箭头功能! ES6上的一个很好的功能,已经在大多数现代浏览器上实现。
Something => {}
表示具有Something作为参数和空体的函数。它类似于:
function (Something) {
}
在您的情况下,它与:
相同export default function (ViewTestStuff) {
constructor(){
// errors
}
return (
<div>
<p>Hello</p>
</div>
)
}
它确实无效。
答案 2 :(得分:0)
这不是React的事情......箭头函数是es6 javascript中的新功能。更多信息可以在https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions
找到