# Exercise
# PropTypes
Creating the propTypes for props: blogPost and headerFontSize.
import PropTypes from "prop-types";
BlogItemText.propTypes = {
blogPost: PropTypes.object.isRequired,
headerFontSize: PropTypes.string,
};
# Utilizing Props
Utilizing the props passed into BlogItemText component.
export default function BlogItemText({ blogPost, headerFontSize }) {
return (
<div>
<div style={{ display: "flex" }}>
<p className="date-author-text">
{blogPost.author.firstName} {blogPost.author.lastName}
</p>
<div className="dot-divider"></div>
<p className="date-author-text">
{blogPost.createdAt.substring(0, 10)}
</p>
</div>
<p
style={{
fontSize: headerFontSize,
fontWeight: "bold",
textAlign: "left",
}}
>
{blogPost.title}
</p>
<p style={{ fontSize: "16px", color: "#667085", textAlign: "left" }}>
{blogPost.description.substring(0, 100)}...
</p>
</div>
);
}
# BlogItemText Component
Entire updated component
import React from "react";
import PropTypes from "prop-types";
import "./index.css";
export default function BlogItemText({ blogPost, headerFontSize }) {
return (
<div>
<div style={{ display: "flex" }}>
<p className="date-author-text">
{blogPost.author.firstName} {blogPost.author.lastName}
</p>
<div className="dot-divider"></div>
<p className="date-author-text">
{blogPost.createdAt.substring(0, 10)}
</p>
</div>
<p
style={{
fontSize: headerFontSize,
fontWeight: "bold",
textAlign: "left",
}}
>
{blogPost.title}
</p>
<p style={{ fontSize: "16px", color: "#667085", textAlign: "left" }}>
{blogPost.description.substring(0, 100)}...
</p>
</div>
);
}
BlogItemText.propTypes = {
blogPost: PropTypes.object.isRequired,
headerFontSize: PropTypes.string,
};