Javascript &引用===&引用;是react中的意外标记
问候斯塔克斯沃夫的居民们。我试图编写一个react组件,它允许用户从下拉菜单中选择一个数字(评级),然后持续显示和跟踪。然而,我有一个小问题。计算机不喜欢if语句中的“==”。上面说这是一个“意外的标记”,怎么回事?这里是if语句和它之前的所有内容,因为我假设您不需要其他内容Javascript &引用===&引用;是react中的意外标记,javascript,reactjs,if-statement,Javascript,Reactjs,If Statement,问候斯塔克斯沃夫的居民们。我试图编写一个react组件,它允许用户从下拉菜单中选择一个数字(评级),然后持续显示和跟踪。然而,我有一个小问题。计算机不喜欢if语句中的“==”。上面说这是一个“意外的标记”,怎么回事?这里是if语句和它之前的所有内容,因为我假设您不需要其他内容 import React, { Component } from "react"; const loggedRatingVar = localStorage.getItem("rating0"); class Dro
import React, { Component } from "react";
const loggedRatingVar = localStorage.getItem("rating0");
class DropDown0 extends Component {
if (loggedRatingVar === null)
{
this.setState({displayRating: "?"});
}
else
{
this.setState({displayRating: loggedRatingVar});
}
您定义的是类组件而不是函数。 我建议阅读有关如何正确操作的文档。 因为您似乎正在设置状态,所以您可能希望将其放在函数或React生命周期方法上(更多关于生命周期方法) 照这样做。就Jaromanda X的评论给出了一个例子
class DropDown0 extends Component {
thisIsAfunction() {
if (loggedRatingVar === null)
{
this.setState({displayRating: "?"});
}
else
{
this.setState({displayRating: loggedRatingVar});
}
}
}
类不是函数。类是不可执行的。类是容器。它们包含
构造函数
、方法
和属性
。类中的任何代码都必须位于方法或构造函数中。(好吧,构造函数只是一种特殊的方法。)
这是基本的JavaScript语法,您最好学习这些示例
我认为问题在于您的类定义是错误的-您不能在顶层使用这样的代码。。。i、 e.它应该在类方法中-请参阅-您发布的代码相当于旧式原型类中的
DropDown0.prototype.if=function(loggedRatingVar==null).