首页 > 其他分享 >vue 模拟商城 二级路由配置

vue 模拟商城 二级路由配置

时间:2023-09-16 18:02:50浏览次数:38  
标签:vue name default Vue export 路由 import 商城


新建vue项目

vue 模拟商城 二级路由配置_vue.js

 

vue 模拟商城 二级路由配置_App_02

 main.js

import Vue from 'vue'
import App from './App.vue'
import store from "@/store";
import router from "@/router";
import '@/utils/vant-ui';

Vue.config.productionTip = false;

new Vue({
  render: h => h(App),
  router,
  store,
}).$mount('#app');

app.vue

<template>
  <div id="app">
    <router-view></router-view>
  </div>
</template>

<script>

export default {
  name: 'App'
}
</script>

<style>

</style>

search index.vue

<template>
    <div>我是Search</div>
</template>

<script>
    export default {
        name: "SearchIndex"
    }
</script>

<style scoped>

</style>

search list.vue

<template>
    <div>我是List</div>
</template>

<script>
    export default {
        name: "ListIndex"
    }
</script>

<style scoped>

</style>

productDetails index.vue

<template>
    <div>我是ProductDetails</div>
</template>

<script>
    export default {
        name: "ProductDetailsIndex"
    }
</script>

<style scoped>

</style>

pay index.vue

<template>
    <div>我是Pay</div>
</template>

<script>
    export default {
        name: "PayIndex"
    }
</script>

<style scoped>

</style>

myOrder index.vue

<template>
    <div>我是MyOrder</div>
</template>

<script>
    export default {
        name: "MyOrderIndex"
    }
</script>

<style scoped>

</style>

login index.vue

<template>
    <div>我是Login</div>
</template>

<script>
    export default {
        name: "LoginIndex"
    }
</script>

<style scoped>

</style>

layout cart.vue

<template>
    <div>我是cart</div>
</template>

<script>
    export default {
        name: "CartPage"
    }
</script>

<style scoped>

</style>

layout category.vue

<template>
    <div>我是category</div>
</template>

<script>
    export default {
        name: "CategoryPage"
    }
</script>

<style scoped>

</style>

layout home.vue

<template>
    <div>我是Home</div>
</template>

<script>
    export default {
        name: "HomePage"
    }
</script>

<style scoped>

</style>

layout index.vue

<template>
    <div class="layout-index">
        <!-- 二级路由出口,二级组件展示的位置   -->
        <router-view></router-view>

        <van-tabbar route active-color="#ee0a24" inactive-color="#000">
            <van-tabbar-item to="/home" icon="wap-home-o">首页</van-tabbar-item>
            <van-tabbar-item to="/category" icon="apps-o">分类页</van-tabbar-item>
            <van-tabbar-item to="/cart" icon="shopping-cart-o">购物车</van-tabbar-item>
            <van-tabbar-item to="/user" icon="user-o">我的</van-tabbar-item>
        </van-tabbar>
    </div>
</template>

<script>
    export default {
        name: "LayoutIndex"
    }
</script>

<style scoped>

</style>

layout user.vue

<template>
    <div>我是user</div>
</template>

<script>
    export default {
        name: "UserPage"
    }
</script>

<style scoped>

</style>

vant-ui.js

import Vue from 'vue'

//Vant组件库,全部导入方式
// npm i vant@latest-v2 -s
// import Vant from 'vant'
// import 'vant/lib/index.css'
// Vue.use(Vant);

//按需导入
import { Button, Tabbar, TabbarItem } from 'vant'
//注册使用
Vue.use(Button);
Vue.use(Tabbar);
Vue.use(TabbarItem);

store index.js

import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex);

const store = new Vuex.Store({
    modules:{

    }
});

export default store;

router index.js

import Vue from 'vue'
import VueRouter from 'vue-router'
import Login from '@/views/login'
import Layout from '@/views/layout'
import MyOrder from '@/views/myorder'
import Pay from '@/views/pay'
import ProductDetails from '@/views/productdetails'
import Search from '@/views/search'
import SearchList from '@/views/search/list'
import Home from "@/views/layout/home";
import Cart from "@/views/layout/cart";
import Category from "@/views/layout/category";
import User from "@/views/layout/user";

Vue.use(VueRouter);

const router = new VueRouter({
    routes:[
        { path:'/login',component:Login},
        {
            path:'/',
            component: Layout,
            redirect:'/home',
            children:[
                { path:'/home',component:Home},
                { path:'/category',component:Category},
                { path:'/cart',component: Cart},
                { path:'/user',component:User}
            ]
        },
        { path:'/search',component:Search},
        { path:'/searchList',component: SearchList},
        { path:'/productDetails/:id',component:ProductDetails},
        { path:'/pay',component:Pay},
        { path:'/myOrder',component:MyOrder}
    ]
});

export default router;

标签:vue,name,default,Vue,export,路由,import,商城
From: https://blog.51cto.com/u_15356972/7495429

相关文章

  • vue 模拟商城 vant的使用
    新建vue项目 main.jsimportVuefrom'vue'importAppfrom'./App.vue'importstorefrom"@/store";importrouterfrom"@/router";import'@/utils/vant-ui';Vue.config.productionTip=false;newVue({render......
  • vue vuex 购物车案例
    新建vue项目 此项目需要用到json-server,模拟后台服务器接口功能,npmijson-server-g安装此包,然后再vue项目的全局根目录中新建db文件夹,其中新建index.json文件。{"cart":[{"id":1001,"name":"低帮城市休闲户外鞋天然牛皮COOLMAX纤维","price":1......
  • vue vuex module mapActions
    新建vue项目 main.jsimportVuefrom'vue'importAppfrom'./App.vue'importstorefrom'@/store'Vue.config.productionTip=false;newVue({render:h=>h(App),store}).$mount('#app');app.vue<template>......
  • Vue 中的 slot 插槽
    目录一:知识点说明二:不使用插槽效果1:界面效果2:代码结构3:代码内容三:使用插槽组件(默认插槽slot)1:界面效果2:代码结构3:代码内容四:使用插槽组件(具名插槽slot)1:看界面效果2:代码结构3:代码内容五:作用域插槽(slot-scope/scope)1:看界面效果2:代码结构3:代码内容 一:知识点说明##插槽1.......
  • Vuex
    目录一:Vue知识要点说明:二:示例一:Vue知识要点说明##Vuex###1.概念 在Vue中实现集中式状态(数据)管理的一个Vue插件,对vue应用中多个组件的共享状态进行集中式的管理(读/写),也是一种组件间通信的方式,且适用于任意组件间通信。Github地址:https://github.com/vuejs......
  • Vue响应式原理
    该随笔是根据b站小满zs的Vue3+vite+Ts+pinia+实战+源码+electron的视频学习写的,Vue3+vite+Ts+pinia+实战+源码+electron......
  • springboot vue uniapp 小说电子书阅读小程序APP源码
    开发环境及工具:大等于jdk1.8,大于mysql5.5,idea(eclipse),nodejs,vscode(webstorm),HBuilderX技术说明:springbootmybatisvueelementuiuniapp代码注释齐全,没有多余代码,适合学习(毕设),二次开发,包含论文技术相关文档。功能介绍:用户端:登录注册首页显示搜索小说,轮播图,最新发布小说(可带推荐算......
  • vue3-路由遇到的问题
    在Vue3中,使用VueRouter来管理应用程序的导航和路由。下面是VueRouter的一些常见使用方法:通过npm或yarn安装VueRouter:npminstallvue-router或yarnaddvue-router在主文件(通常是main.js)中导入VueRouter并创建一个实例:import{createApp}from'vue'importrouterfrom'......
  • vue中elementui el-input绑定的值如何过滤掉输入的空格?
    在vue中可以在@input事件中使用Trim函数来去掉前后两端空格,再使用replace方法来删除中间空格,此时的值删除所有空格,用户输入值中的空格就会被过滤掉了。<template> <div> <el-inputv-model="searchValue"@input="handleInput"></el-input></div></template><scrip......
  • 基于微信平台的购物商城小程序开发
    计算机网络发展到现在已经好几十年了,在理论上面已经有了很丰富的基础,并且在现实生活中也到处都在使用,可以说,经过几十年的发展,互联网技术已经把地域信息的隔阂给消除了,让整个世界都可以即时通话和联系,极大的方便了人们的生活。所以说,购物商城小程序用计算机技术来进行设计,不仅在管理......