25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

112 lines
3.6 KiB

  1. import React, { Component } from 'react';
  2. import Masonry from 'react-masonry-component';
  3. import Link from 'next/link';
  4. const masonryOptions = {
  5. transitionDuration: 0
  6. };
  7. export class Projects extends Component {
  8. render() {
  9. const images = this.props.images.map((image, idx) => {
  10. return (
  11. <div className="col-lg-4 col-sm-6 item" key={idx}>
  12. <div className="single-latest-projects">
  13. <img src={image.image} alt="portfolio-image" />
  14. <div className="content">
  15. <span>{image.category}</span>
  16. <h3>{image.title}</h3>
  17. </div>
  18. <Link href="/project-details">
  19. <a className="link-btn"></a>
  20. </Link>
  21. </div>
  22. </div>
  23. )
  24. })
  25. return (
  26. <div className="our-latest-projects ptb-80">
  27. <div className="container">
  28. <div className="section-title text-left">
  29. <h2>Catania Hotel <span>Gallery</span></h2>
  30. </div>
  31. <Masonry
  32. className={'row'} // default ''
  33. elementType={'div'} // default 'div'
  34. options={masonryOptions} // default {}
  35. disableImagesLoaded={false} // default false
  36. updateOnEachImageLoad={false} // default false and works only if disableImagesLoaded is false
  37. >
  38. {images}
  39. </Masonry>
  40. </div>
  41. </div>
  42. );
  43. }
  44. }
  45. Projects.defaultProps = {
  46. images: [
  47. {
  48. image: "/images/agency-portfolio-projects/ap-project1.jpg",
  49. category: "Business",
  50. title: "Business Stratagy"
  51. },
  52. {
  53. image: "/images/agency-portfolio-projects/ap-project2.jpg",
  54. category: "Development",
  55. title: "Web Development"
  56. },
  57. {
  58. image: "/images/agency-portfolio-projects/ap-project3.jpg",
  59. category: "Marketing",
  60. title: "Digital Marketing"
  61. },
  62. {
  63. image: "/images/agency-portfolio-projects/ap-project4.jpg",
  64. category: "App",
  65. title: "Mobile App Development"
  66. },
  67. {
  68. image: "/images/agency-portfolio-projects/ap-project6.jpg",
  69. category: "Marketing",
  70. title: "Email Marketing"
  71. },
  72. {
  73. image: "/images/agency-portfolio-projects/ap-project5.jpg",
  74. category: "Development",
  75. title: "E-commerce Development"
  76. },
  77. {
  78. image: "/images/agency-portfolio-projects/ap-project9.jpg",
  79. category: "App",
  80. title: "React App Development"
  81. },
  82. {
  83. image: "/images/agency-portfolio-projects/ap-project8.jpg",
  84. category: "Writing",
  85. title: "Content Writing"
  86. },
  87. {
  88. image: "/images/agency-portfolio-projects/ap-project7.jpg",
  89. category: "IT",
  90. title: "IT Consultancy"
  91. },
  92. {
  93. image: "/images/agency-portfolio-projects/ap-project11.jpg",
  94. category: "Solutions",
  95. title: "IT Solutions"
  96. },
  97. {
  98. image: "/images/agency-portfolio-projects/ap-project10.jpg",
  99. category: "Marketing",
  100. title: "Marketing & Reporting"
  101. },
  102. ]
  103. }
  104. export default Projects;