質問: メモアプリの作成をreact native で試みています。 App.js に以下の通り記載しています。 ``` render() { ``` の部分に ESLintでParsing error: Unexpected token, expected ";" (Fatal) の表示がされます。 ";"を加えれば良いのかと思い付け加えてみましたが、エラー表示は変わりませんでした。 どのようにすれば解決できますでしょうか? ``` import React from 'react'; import { StyleSheet, Text, View } from 'react-native'; export default function App() { render() { return ( MEMOT あああ いいい ); } } ```
回答: エラーメッセージのとおり、このコードはJavaScriptとして**成立していません**。 `export default function App() {`とある通り、これ全体は関数となりますので、その中に書かれた`render()`は**関数呼び出し**として扱われます。 そして、続く`{}`をオブジェクトリテラルとして解釈しようとしますが、これはオブジェクトリテラルとして正しくないのでエラーとなります。 `render()`を書くのはクラスコンポーネントで、関数コンポーネントの場合は`return`で直接JSXを返す形となります。この両者が混ざってしまっているので、どちらかの書き方にしてください。