Top Related Projects
:tada: A magical vue admin https://panjiachen.github.io/vue-element-admin
Large single page application with 45 pages built on vue2 + vuex. 基于 vue2 + vuex 构建一个具有 45 个页面的大型单页面应用
Vue3、Element Plus、typescript后台管理系统
Vue 2.0 admin management system template based on iView
👨🏻💻👩🏻💻 Use Ant Design Vue like a Pro! (vue2)
A Vue.js 2.0 UI Toolkit for Web
Quick Overview
xyy-vue is a Vue.js-based music player application. It provides a user interface for playing and managing music, including features like playlists, search functionality, and a visually appealing design inspired by NetEase Cloud Music.
Pros
- Built with Vue.js, offering a reactive and component-based architecture
- Includes a responsive design for both desktop and mobile devices
- Integrates with a backend API for fetching music data and user information
- Features a clean and modern user interface
Cons
- Limited documentation, which may make it challenging for new contributors
- Relies on specific API endpoints, potentially limiting its flexibility for use with different backend services
- May require additional setup for full functionality, as it depends on a separate backend service
- Some components and features may need updates to work with the latest Vue.js version
Code Examples
<!-- Example of a Vue component for displaying a song item -->
<template>
<div class="song-item" @click="playSong">
<img :src="song.cover" alt="Song Cover" />
<div class="song-info">
<h3>{{ song.title }}</h3>
<p>{{ song.artist }}</p>
</div>
</div>
</template>
<script>
export default {
props: ['song'],
methods: {
playSong() {
this.$emit('play', this.song);
}
}
}
</script>
<!-- Example of using Vuex store to manage player state -->
<script>
import { mapState, mapActions } from 'vuex';
export default {
computed: {
...mapState('player', ['currentSong', 'isPlaying'])
},
methods: {
...mapActions('player', ['play', 'pause', 'next', 'previous'])
}
}
</script>
<!-- Example of using vue-router for navigation -->
<template>
<nav>
<router-link to="/">Home</router-link>
<router-link to="/playlist">Playlist</router-link>
<router-link to="/search">Search</router-link>
</nav>
</template>
Getting Started
To get started with xyy-vue:
-
Clone the repository:
git clone https://github.com/hzzly/xyy-vue.git
-
Install dependencies:
cd xyy-vue npm install
-
Start the development server:
npm run serve
-
Open your browser and navigate to
http://localhost:8080
to view the application.
Note: You may need to set up and configure the backend API separately for full functionality.
Competitor Comparisons
:tada: A magical vue admin https://panjiachen.github.io/vue-element-admin
Pros of vue-element-admin
- More comprehensive and feature-rich admin template
- Larger community and better documentation
- Includes advanced features like permission control and i18n support
Cons of vue-element-admin
- Steeper learning curve due to its complexity
- Potentially overkill for smaller projects
- Heavier bundle size due to numerous features
Code Comparison
vue-element-admin:
import permission from './permission'
import element from './element'
import settings from './settings'
Vue.use(permission)
Vue.use(element, { size: settings.elementSize })
xyy-vue:
import Vue from 'vue'
import App from './App'
import router from './router'
import store from './store'
Vue.config.productionTip = false
The code snippets show that vue-element-admin includes more advanced features like permission handling and custom element settings, while xyy-vue has a simpler setup focused on core Vue.js functionality.
vue-element-admin is better suited for large-scale applications requiring extensive admin features, while xyy-vue might be more appropriate for smaller projects or those needing a lightweight starting point. The choice between them depends on the project's specific requirements and complexity.
Large single page application with 45 pages built on vue2 + vuex. 基于 vue2 + vuex 构建一个具有 45 个页面的大型单页面应用
Pros of vue2-elm
- More comprehensive and feature-rich, offering a full-fledged food delivery application
- Extensive documentation and detailed README, making it easier for developers to understand and contribute
- Larger community and more active development, with frequent updates and bug fixes
Cons of vue2-elm
- Larger codebase and more complex structure, which may be overwhelming for beginners
- Focused on a specific use case (food delivery), making it less flexible for other types of projects
- Heavier dependencies and potentially slower performance due to its extensive features
Code Comparison
vue2-elm:
<template>
<div>
<header-top :head-title="cityname" go-back='true'>
<router-link to="/home" slot="changecity" class="change-city">切换城市</router-link>
</header-top>
<form class="city-form" v-on:submit.prevent>
<div>
<input type="search" name="city" placeholder="输入学校、商务楼、地址" class="city-input input-style" required v-model='inputVaule'>
</div>
</form>
</div>
</template>
xyy-vue:
<template>
<div class="search">
<div class="search-box">
<i class="icon-search"></i>
<input v-model="query" class="box" :placeholder="placeholder" @keyup.enter="onSubmit">
</div>
</div>
</template>
The code comparison shows that vue2-elm has a more complex template structure with additional components and routing, while xyy-vue has a simpler, more focused search component.
Vue3、Element Plus、typescript后台管理系统
Pros of vue-manage-system
- More comprehensive and feature-rich admin template
- Better documentation and examples for various components
- Active development with frequent updates and bug fixes
Cons of vue-manage-system
- Larger codebase, potentially more complex for beginners
- Heavier dependencies, which may impact performance
- Less focused on specific use cases, more general-purpose
Code Comparison
vue-manage-system:
<template>
<div class="sidebar">
<el-menu class="sidebar-el-menu" :default-active="onRoutes" :collapse="collapse" background-color="#324157"
text-color="#bfcbd9" active-text-color="#20a0ff" unique-opened router>
<template v-for="item in items">
<template v-if="item.subs">
xyy-vue:
<template>
<div id="app">
<router-view></router-view>
</div>
</template>
<script>
export default {
name: 'App'
}
</script>
The code comparison shows that vue-manage-system has a more complex sidebar component with various configuration options, while xyy-vue has a simpler app structure. This reflects the overall difference in complexity and feature set between the two projects.
Vue 2.0 admin management system template based on iView
Pros of iview-admin
- More comprehensive and feature-rich admin template
- Better documentation and community support
- Includes advanced components like charts and tables
Cons of iview-admin
- Larger codebase, potentially more complex to customize
- Steeper learning curve for beginners
- May include unnecessary features for simpler projects
Code Comparison
xyy-vue (main.js):
import Vue from 'vue'
import App from './App'
import router from './router'
import store from './store'
Vue.config.productionTip = false
iview-admin (main.js):
import Vue from 'vue'
import App from './App'
import router from './router'
import store from './store'
import iView from 'iview'
import i18n from '@/locale'
import config from '@/config'
Vue.use(iView, {
i18n: (key, value) => i18n.t(key, value)
})
The iview-admin main.js file includes additional imports for iView components and internationalization, showcasing its more feature-rich nature. xyy-vue has a simpler setup, which may be easier for beginners to understand and customize.
👨🏻💻👩🏻💻 Use Ant Design Vue like a Pro! (vue2)
Pros of ant-design-vue-pro
- More comprehensive and feature-rich, offering a complete admin dashboard solution
- Better documentation and community support
- Regularly updated with new features and bug fixes
Cons of ant-design-vue-pro
- Larger codebase, which may be overwhelming for simpler projects
- Steeper learning curve due to its complexity
- More opinionated structure, potentially limiting flexibility for custom implementations
Code Comparison
ant-design-vue-pro:
<template>
<a-config-provider :locale="locale">
<div id="app">
<router-view/>
</div>
</a-config-provider>
</template>
xyy-vue:
<template>
<div id="app">
<router-view></router-view>
</div>
</template>
The code comparison shows that ant-design-vue-pro uses the Ant Design Vue configuration provider for internationalization, while xyy-vue has a simpler structure. This reflects the more comprehensive nature of ant-design-vue-pro and its focus on providing a complete solution with built-in features like internationalization support.
A Vue.js 2.0 UI Toolkit for Web
Pros of element
- Much larger community and user base, with over 50k GitHub stars
- Comprehensive documentation and extensive component library
- Regular updates and maintenance from a dedicated team
Cons of element
- Larger file size and potential performance overhead
- Steeper learning curve due to the extensive API and options
- Less flexibility for customization compared to smaller libraries
Code Comparison
element:
<el-button type="primary" @click="handleClick">
Click me
</el-button>
xyy-vue:
<x-button type="primary" @click="handleClick">
Click me
</x-button>
Summary
element is a more mature and feature-rich UI library for Vue.js, offering a wide range of components and extensive documentation. It's well-suited for large-scale applications and teams that require a comprehensive solution. However, this comes at the cost of a larger file size and potentially more complex implementation.
xyy-vue, on the other hand, is a smaller and more lightweight library. It may offer more flexibility for customization and a gentler learning curve, but lacks the extensive component library and community support of element.
The code comparison shows that both libraries use similar syntax for basic components, making it relatively easy to switch between them if needed.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
xyy-vue
ä¸ä¸ªéè¿å¨ãé»ç¼ãåºæ¸¸ã交åã社交为ä¸ä½çé常æ°é¢çé对大å¦ççå¹³å°ãæ¨å¨è®©ç°å¨ç大å¦çæå¼è¿å»æ¯ç¥ä¹å³ãåä¸ççæ´»æ¹å¼ï¼å»è®¤è¯æ´å¤çæåãæ©å±èªå·±ç人èåï¼å±ä¸ªäººé¡¹ç®ã
ææ¯æ
åå°
- vue
- vue-router
- vuex
- axios
- es6
- localStorage
- webpack
Api
- 约è¡å表 https://www.easy-mock.com/mock/5c6b6b1815b74a0aacc7a902/xyy/api/travelList
- 约è¡è¯¦æ https://www.easy-mock.com/mock/5c6b6b1815b74a0aacc7a902/xyy/api/travelDetail/:id
- 约è·å表 https://www.easy-mock.com/mock/5c6b6b1815b74a0aacc7a902/xyy/api/sportList
- 约è·è¯¦æ https://www.easy-mock.com/mock/5c6b6b1815b74a0aacc7a902/xyy/api/sportDetail/:id
- ç¨æ·ä¿¡æ¯ https://www.easy-mock.com/mock/5c6b6b1815b74a0aacc7a902/xyy/api/userInfo
- æççº¦è¡ https://www.easy-mock.com/mock/5c6b6b1815b74a0aacc7a902/xyy/api/myTravel
- åå¸çº¦è¡ä¸ªæ° https://www.easy-mock.com/mock/5c6b6b1815b74a0aacc7a902/xyy/api/getPubToTravelNum
åå°
- Node(Express)
- restful api
- leancloud
å ·ä½è¯¦æ
Build Setup
# install dependencies
npm install
# serve with hot reload at localhost:8080
npm run dev
# build for production with minification
npm run build
# build for production and view the bundle analyzer report
npm run build --report
For detailed explanation on how things work, checkout the guide and docs for vue-loader.
Top Related Projects
:tada: A magical vue admin https://panjiachen.github.io/vue-element-admin
Large single page application with 45 pages built on vue2 + vuex. 基于 vue2 + vuex 构建一个具有 45 个页面的大型单页面应用
Vue3、Element Plus、typescript后台管理系统
Vue 2.0 admin management system template based on iView
👨🏻💻👩🏻💻 Use Ant Design Vue like a Pro! (vue2)
A Vue.js 2.0 UI Toolkit for Web
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot