# gosearch **Repository Path**: lisuju/gosearch ## Basic Information - **Project Name**: gosearch - **Description**: 这是一个基于react框架的网页应用:提供百度、csdn、哔哩哔哩等网站的搜索服务;提供基于网易云api制作的音乐播放器,提供“精彩一句”和“历史上的今天”这两个小功能。 - **Primary Language**: JavaScript - **License**: MIT - **Default Branch**: master - **Homepage**: http://sokyo.usa3v.cn/ - **GVP Project**: No ## Statistics - **Stars**: 5 - **Forks**: 0 - **Created**: 2021-10-04 - **Last Updated**: 2022-03-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: HTML, Nodejs, React ## README # gosearch #### 介绍 这是一个基于react框架的网页应用:提供百度、csdn、哔哩哔哩等网站的搜索服务;提供基于网易云api制作的音乐播放器,提供“精彩一句”和“历史上的今天”这两个小功能。本项目已经部署在我的个人网站:http://sokyo.usa3v.cn/ #### 软件架构 #### master分支文件介绍: - build: (使用npm run build 命令后)webpack打包后的文件包(把react的jsx转换成js,去掉代码注释等),本文件包已经部署在我的个人网站:http://sokyo.usa3v.cn/; - node-modules:存放本项目用到的所有node模块。在项目代码编写过程中常用的node模块有: - pubsub-js(提供组件间通信功能) ; - react ; - axios (xhr对象的异步风格封装,可用于发送http请求和获取服务器响应内容); - nanoid(生成唯一ID号) ; - react-router-dom(使用其暴露的route、redirect、navlink、HashRouter等); - public 核心是index.html文件,该页面上id为“root”的节点会加载src/index.js 渲染的 src/App.js; - src - components - battery:电量显示(最终项目未引入该组件); - Clock:主页时钟; - Event:渲染父组件Todayonhistory传进来的props,可以点击转跳至对应的百度百科页面; - Input:输入框组件,向指定api发送搜索词条,将返回的json数据处理后存进state中,并把歌曲信息(songid)广播出去(在src/pages/MusicSearch/MusicSearch.jsx中引入了该组件); - Loading:在主页内容未加载完成之前显示的动态加载提示页面,实际上是z-index数值比较大的div节点;该组件在网页内容完全加载后滑出; - Logo:负责主页左上角的logo显示; - Music:负责主页右上角的goMusic功能,实现了一个基于网易云api的音乐搜索、播放组件; - Oneword:负责主页底部的“精彩一句”功能,内容会在加载主页时刷新; - Search:主页搜索,集合了百度、哔哩哔哩、csdn、知乎、Google的快速跳转功能; - Tab:提供腾讯的QQ音乐、QQ邮箱、翻译君的快捷访问; - Todayonhistory:展示“历史上的今天”知识栏,每项历史事件由子组件Event渲染; - font:放了作者比较喜欢的站酷快乐体,但是最后并未采用; - pages:路由组件,在src/components/Music中被引入; - Help:帮助组件; - Hot:热搜组件; - HotSearchDetail:热搜子组件,展示热搜词条; - MusicSearch:搜索组件; - MusicSearchDetail:搜索子组件,展示搜索结果; - .gitignore:配置git忽略node_modules的变化; - package-lock.json/package.json:配置文件,可查看依赖模块的版本,打包配置等; #### 感谢 - 感谢此api提供的网易云音乐相关服务:https://cloud-music-api-f494k233x-mgod-monkey.vercel.app/ (此api说明文档:https://neteasecloudmusicapi.vercel.app/ ) - 感谢此api提供的历史上的今天数据服务:https://api.yum6.cn/briefing/baidu.php?format=json - 感谢朋友们的宝贵意见和支持 #### 声明 - 开发者不承担任何有关公开api数据的责任,数据内容由公开api维护; - 请勿将本项目提供的音乐文件商用,后果由使用者承担;