vue案例实战

案例实战

1. 创建项目

npm create vite@latest 0410-vue3-vuex-project

我们这个项目会用 vite2.8 + Vue3.2 + Router4 + Vuex4 + TypeScript4.6 + Element-Plus + axios

2. 安装依赖

npm install vue-router@4
npm install vuex@next
npm install axios
npm install element-plus
npm install less less-loader -D

3. 配置路由

src/router/index.ts

import {createRouter, createWebHashHistory, RouteRecordRaw} from "vue-router";
const routes: Array<RouteRecordRaw> = [
    {
        path: '/',
        name: 'Home',
        component: () => import('../views/Home.vue')
    }
]
const router = createRouter({
    history: createWebHashHistory(),
    routes,
})
export default router

根组件

在根组件中添加路由视口。

<template>
    <router-view></router-view>
</template>

布局组件

Layout.vue

src/views/Layout.vue

<template>
    <!-- 导航组件 -->
    <!-- 导航对应的内容组件 -->
    <router-view></router-view>
</template>

<script setup lang="ts">
import {ref} from 'vue'

</script>

<style scoped>

</style>

配置Layout的路由

const routes: Array<RouteRecordRaw> = [
    {
        path: '/',
        name: 'Home',
        component: () => import('../views/Home.vue')
    },
    {
        path: '/layout',
        name: 'Layout',
        component: () => import('../views/Layout.vue')
    }
]

首页组件

src/views/Home.vue

<template>
    <div>首页</div>
</template>

<script setup lang="ts">
</script>

<style scoped>
</style>

配置路由

const routes: Array<RouteRecordRaw> = [
    {
        path: '/',
        name: 'Layout',
        component: () => import('../views/Layout.vue'),
        children: [
            {
                path: 'home',
                name: 'Home',
                component: () => import('../views/Home.vue')
            },
        ]
    }
]

新闻组件

src/views/News.vue

<template>
    <div>新闻</div>
</template>

<script setup lang="ts">
</script>

<style scoped>

</style>

配置路由

        {
            path: 'news',
            component: () => import('../views/News.vue')
        },

关于我们

src/views/About.vue

<template>
    <div>关于我们</div>
</template>

<script setup lang="ts">
</script>

<style scoped>

</style>

配置路由:

        {
            path: 'about',
            component: () => import('../views/About.vue')
        },

登录组件

src/views/Login.vue

<template>
    <div>登录</div>
</template>

<script setup lang="ts">
</script>

<style scoped>

</style>

配置路由

    {
        path: '/login',
        component: () => import('../views/Login.vue')
    }

顶部组件

src/components/Header.vue

<template>
    菜单
</template>

<script setup lang="ts">
</script>

<style scoped>

</style>

使用这个组件,在 Layout.vue 中引入:

<template>
    <!-- 导航组件 -->
    <Header></Header>
    <!-- 导航对应的内容组件 -->
    <router-view></router-view>
</template>

<script setup lang="ts">
import Header from '../components/Header.vue'

</script>

挂载路由

在 main.ts 文件中挂载路由

import router from './router'
App.use(router).mount('#app')
  • 1
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
一个前端Vue项目实战案例可以按照以下开发流程进行: 1. 项目立项:包括需求分析、技术选型和确定项目人员等。 2. 产品原型设计:设计产品原型图,并进行UI设计。 3. 项目开发:前端与后端进行开发,前端部分包括设计图和切图,后端部分包括服务端的开发。 4. 项目测试:由测试部门进行测试。 5. 项目上线:由运维和后端负责项目的上线。 开发环境方面,可以使用开发工具如VS Code,并安装Vue开发工具vetur。项目运行环境可以是Node v10,Vue脚手架可以使用vue-cli 4.5.7。代码版本工具可以使用Git/Gitee。 一个具体的前端Vue项目实战案例可以是根据《Vue项目开发实战》开发的项目。Vue.js是一套构建用户界面的渐进式框架,相对于其他重量级框架,Vue采用自底向上增量开发的设计,它的核心库只关注视图层,并且非常容易学习和整合到其他库或已有项目中。 该实战案例可以包含以下内容: - 创建登录页面,使用snipaste截图软件进行页面设计。 - 安装element-ui和axios请求库,用于页面的样式和数据请求。 - 配置myaxiosapi文件接口,用于与后端进行数据交互。 - 实现常见的跨域方式,确保前端项目能够正常与后端进行通信。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [Vue综合实战项目](https://blog.csdn.net/m0_45272038/article/details/113828939)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [vue项目开发实战](https://download.csdn.net/download/weixin_38596117/19953278)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值