本站所有源码均为自动秒发货,默认(百度网盘)
一、软件开发公司官网的核心功能模块设计
二、技术选型:平衡性能与开发效率
三、核心功能代码实现示例
1. 技术栈展示组件(React + Tailwind CSS)
import React, { useState } from 'react';
const TechStackCard = ({ tech, icon, depth, applications }) => {
const [isHovered, setIsHovered] = useState(false);
return (
<div
className={`transition-all duration-300 rounded-xl p-6 shadow-lg hover:shadow-2xl ${
isHovered ? 'transform -translate-y-2' : ''
}`}
onMouseEnter={() => setIsHovered(true)}
onMouseLeave={() => setIsHovered(false)}
>
<div className="text-4xl mb-4 text-blue-600">{icon}</div>
<h3 className="text-xl font-bold mb-2">{tech}</h3>
{isHovered && (
<div className="mt-4">
<p className="text-gray-600"><span className="font-semibold">技术深度:</span>{depth}</p>
<p className="text-gray-600 mt-2"><span className="font-semibold">应用场景:</span>{applications}</p>
</div>
)}
</div>
);
};
// 使用示例
const TechStackSection = () => {
const techs = [
{
tech: "人工智能",
icon: "🤖",
depth: "机器学习模型训练、自然语言处理、计算机视觉",
applications: "智能客服系统、图像识别解决方案、数据分析平台"
},
{
tech: "全栈开发",
icon: "💻",
depth: "React/Vue前端框架、Node.js/Java后端、微服务架构",
applications: "企业管理系统、SaaS平台、电商解决方案"
}
// 更多技术项...
];
return (
<section className="py-16 px-4">
<h2 className="text-3xl font-bold text-center mb-12">核心技术能力</h2>
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8">
{techs.map((tech, index) => (
<TechStackCard key={index} {...tech} />
))}
</div>
</section>
);
};
2. 案例展示轮播(结合动画效果)
import { motion, AnimatePresence } from 'framer-motion';
const CaseStudy = ({ caseStudies }) => {
const carouselRef = useRef(null);
const scroll = (direction) => {
const scrollAmount = direction === 'left' ? -300 : 300;
carouselRef.current.scrollBy({ left: scrollAmount, behavior: 'smooth' });
};
return (
<section className="py-16 px-4 bg-gray-50">
<h2 className="text-3xl font-bold text-center mb-12">成功案例</h2>
<div className="relative">
<button
onClick={() => scroll('left')}
className="absolute left-0 top-1/2 -translate-y-1/2 bg-white rounded-full p-2 shadow-md z-10"
>
←
</button>
<div
ref={carouselRef}
className="flex space-x-6 overflow-x-auto pb-8 scrollbar-hide"
style={{ scrollbarWidth: 'none', msOverflowStyle: 'none' }}
>
{caseStudies.map((item, index) => (
<motion.div
key={index}
className="min-w-[300px] md:min-w-[400px] bg-white rounded-xl overflow-hidden shadow-lg"
whileHover={{ scale: 1.02 }}
transition={{ duration: 0.3 }}
>
<img
src={item.image}
alt={item.title}
className="w-full h-48 object-cover"
/>
<div className="p-6">
<h3 className="text-xl font-bold mb-2">{item.title}</h3>
<p className="text-gray-600 mb-4 line-clamp-2">{item.description}</p>
<div className="flex flex-wrap gap-2 mb-4">
{item.techStack.map((tech, i) => (
<span key={i} className="bg-blue-100 text-blue-800 text-xs px-2 py-1 rounded">
{tech}
</span>
))}
</div>
<button className="text-blue-600 font-medium">查看详情 →</button>
</div>
</motion.div>
))}
</div>
<button
onClick={() => scroll('right')}
className="absolute right-0 top-1/2 -translate-y-1/2 bg-white rounded-full p-2 shadow-md z-10"
>
→
</button>
</div>
</section>
);
};