未终止的 JSX 内容
Unterminated JSX contents
在 meteor 应用程序中,我正在尝试使用 React 呈现登录表单。
import React from 'react';
export default class Login extends React.Component {
render() {
return (
<div class="login-card">
<h1>Log-in</h1><br>
<form>
<input type="text" name="user" placeholder="Username" />
<input type="password" name="pass" placeholder="Password" />
<input type="submit" name="login" class="login login-submit" value="login" />
</form>
<a class="login-help" href="#">Register</a>
</div>
);
}
}
但是 metor 无法编译上面的 jsx 文件并说.
While processing files with ecmascript (for target web.browser):
client/loginForm.jsx:15:8: Unterminated JSX contents (15:8)
可能是什么原因?
import React from 'react';
export default class Login extends React.Component {
render() {
return (
<div class="login-card">
<h1>Log-in</h1><br></br>
<form>
<input type="text" name="user" placeholder="Username" />
<input type="password" name="pass" placeholder="Password" />
<input type="submit" name="login" class="login login-submit" value="login" />
</form>
<a class="login-help" href="#">Register</a>
</div>
);
}
}
关闭br标签
您需要关闭 br
元素,在 React 中始终使用自关闭标签,并且也不要使用 class
使用 className
代替
import React from 'react';
export default class Login extends React.Component {
render() {
return (
<div className="login-card">
<h1>Log-in</h1><br/> // Close br
<form>
<input type="text" name="user" placeholder="Username" />
<input type="password" name="pass" placeholder="Password" />
<input type="submit" name="login" className="login login-submit" value="login" />
</form>
<a className="login-help" href="#">Register</a>
</div>
);
}
}
在 meteor 应用程序中,我正在尝试使用 React 呈现登录表单。
import React from 'react';
export default class Login extends React.Component {
render() {
return (
<div class="login-card">
<h1>Log-in</h1><br>
<form>
<input type="text" name="user" placeholder="Username" />
<input type="password" name="pass" placeholder="Password" />
<input type="submit" name="login" class="login login-submit" value="login" />
</form>
<a class="login-help" href="#">Register</a>
</div>
);
}
}
但是 metor 无法编译上面的 jsx 文件并说.
While processing files with ecmascript (for target web.browser):
client/loginForm.jsx:15:8: Unterminated JSX contents (15:8)
可能是什么原因?
import React from 'react';
export default class Login extends React.Component {
render() {
return (
<div class="login-card">
<h1>Log-in</h1><br></br>
<form>
<input type="text" name="user" placeholder="Username" />
<input type="password" name="pass" placeholder="Password" />
<input type="submit" name="login" class="login login-submit" value="login" />
</form>
<a class="login-help" href="#">Register</a>
</div>
);
}
}
关闭br标签
您需要关闭 br
元素,在 React 中始终使用自关闭标签,并且也不要使用 class
使用 className
代替
import React from 'react';
export default class Login extends React.Component {
render() {
return (
<div className="login-card">
<h1>Log-in</h1><br/> // Close br
<form>
<input type="text" name="user" placeholder="Username" />
<input type="password" name="pass" placeholder="Password" />
<input type="submit" name="login" className="login login-submit" value="login" />
</form>
<a className="login-help" href="#">Register</a>
</div>
);
}
}