javascript 在React中新建日期().getFullYear()

fafcakar  于 2022-12-17  发布在  Java
关注(0)|答案(9)|浏览(138)

我试图在页脚中显示当前年份,并试图找出如何获得当前年份React方式?是否有方法使用new Date().getFullYear()?

wydwbb8l

wydwbb8l1#

您需要将Pure JavaScript放入{}中。

class HelloMessage extends React.Component {
  render() {
    return <div>{(new Date().getFullYear())}</div>;
  }
}

ReactDOM.render(<HelloMessage />, mountNode);

编译版本为:

class HelloMessage extends React.Component {
  render() {
    return React.createElement(
      "div",
      null,
      new Date().getFullYear()
    );
  }
}

ReactDOM.render(React.createElement(HelloMessage, null), mountNode);
ig9co6j1

ig9co6j12#

你可以做的一件事是在render函数之外创建一个函数来获取年份:

getYear() {
    return new Date().getFullYear();
}

然后把它插入到render函数中任何你想插入的地方,例如,你可以把它放在一个<span>标签中,在页脚中得到当前年份:

<span>
   © {this.getYear()} Your Name
</span>

这将产生:
© 2018 Your Name
在render方法之外使用一个命名良好的函数,您可以快速找到该函数的功能,并且可以在将来修改它,比如说,您希望更改版权年份,如© 1996 - 2018等。

r1zhe5dt

r1zhe5dt3#

你可以只添加一个变量const today = new Date();,然后在你想要放置它的地方添加<p> {today.getFullYear()} </p>来拉入当前年份。

mhd8tkvw

mhd8tkvw4#

使用钩子的示例

无法使用react useState来更改要在DOM中打印的变量date的值,也无法使用useEffect来显示DOM何时就绪
在jsx中缩放{date}以打印加载的em文档后

import React, {useState, useEffect} from 'react';

export default function Footer() {

    const [date , setDate] = useState();

    const getYear = () =>  setDate(new Date().getFullYear())

    useEffect(() => {
        getYear();
    }, [])
  return (
    <>
     &copy; Rogerio Orioli - {date}
    </>
  );
}
jv2fixgn

jv2fixgn5#

您可以在页脚组件中复制和粘贴以下代码:

import React from 'react';

const Footer = () => {
  const today = new Date();
  const year = today.getFullYear();
  return (
    <footer>
      <p>
        <small>Copywrite © {year} Name</small>
      </p>
    </footer>
  );
};

export default Footer;
rkue9o1l

rkue9o1l6#

我知道这有点旧,但还是有一些风景的。
下面是显示您的起始年份和当前年份(如果不同)的最小代码,这可能非常方便。

function DisplayCopyright() {
    const startYear = 2021
    const currentYear = new Date().getFullYear()

    return (
        <> copyright {startYear === currentYear ? date : startYear + "-" + currentYear} </>
    )
}

export default DisplayCopyright

字符串

vc9ivgsu

vc9ivgsu7#

我使用了一个答案,并对其进行了修改,以使其在react js上工作:

import React, { Component } from "react";

export const Footer = () => {
let getYear = () => {
    let currentYear = new Date().getFullYear();
    return currentYear;
};
return (
    <div>
        <footer className="py-5 bg-dark">
            <div className="container-fluid">
                <p className="m-0 text-center text-white">
                    Copyright &copy;
                    <span> {getYear()} YourName </span>
                    <br /> Made with ❤️ by YourName 🔥
                </p>
            </div>
        </footer>
    </div>
);
};
sycxhyv7

sycxhyv78#

如果要计算组件挂载时的当前年份,useState就足够了:

import React, {useState} from 'react';

export default function Footer() {
  const [currentYear] = useState(() =>  new Date().getFullYear());
  return (
    <>
     &copy; MyWebsite - {currentYear}
    </>
  );
}
e5nqia27

e5nqia279#

function Footer(params) {
 
  const today = new Date()
  const year = today.getFullYear();
  
    return(
        <>
         <footer className="footer">
            <div className="d-sm-flex justify-content-center justify-content-sm-between">
              <span className="text-muted d-block text-center text-sm-left d-sm-inline-block">Copyright © bootstrapdash.com {year}</span>
              <span className="float-none float-sm-right d-block mt-1 mt-sm-0 text-center"> Free <a href="https://www.bootstrapdash.com/" target="_blank">Bootstrap dashboard template</a> from Bootstrapdash.com</span>
            </div>
          </footer>

        </>
    )
}
export default Footer;

相关问题