私はこのエラーを受け続けます:
TypeError:date.getHoursは関数ではありません
.getHours
を使おうとすると、その理由がわかりません。これは私が使用しているコードです:
import React from "react";
import "../Nav/Nav.css";
import Date from "./Date";
function NavBar() {
var date = new Date();
var hrs = date.getHours();
var greeting;
if (hrs < 12) greeting = "Good Morning";
else if (hrs >= 12 && hrs <= 17) greeting = "Good Afternoon";
else if (hrs >= 17 && hrs <= 24) greeting = "Good Evening";
return (
<div className="nav-container">
<p className="greeting">{greeting}</p>
<Date />
</div>
);
}
export default NavBar;
dateをcomponent
オブジェクトとして、DateをDate
オブジェクトとして使用することはできません
どうか変更してください
import Date from "./Date";
...
<Date />
に
import Date as ObjDate from "./Date";
...
<ObjDate />
問題を再現しようとしました。あなたの例からコードの一部をコピーして、これが結果です:
https://codepen.io/tural-ALi/pen/vYEeaRK
var date = new Date();
var hrs = date.getHours();
alert(hrs);
それは完全にうまくいきます。
つまり、インポートに関連するものです。
import Date from "./Date";
エラーの原因となる行です。このインポートのエイリアスを次のように作成してみてください:
import Date as DateObject from "./Date";