vue-cli(一)

介绍

vue-cli脚手架是‌ Vue.js项目的官方脚手架,基于‌ Node.js与‌ Webpack构建,用于快速生成Vue工程化项目的工具。 它具有以下特点:

  1. 开箱即用

提供了一套完整的项目结构和配置,减少了手动配置的工作量。

  1. 基于Webpack

利用Webpack的资源打包和优化功能,提高项目的性能和稳定性。

  1. 功能丰富且易于扩展

支持创建Vue2和Vue3的项目,提供了丰富的功能和插件系统,便于定制和扩展。

  1. 支持命令行操作

通过命令行接口(CLI)进行项目创建和管理,提升了开发效率。‌

具体的代码在C:\Users\Administrator、

主要介绍一些功能的实现方法:

导航栏的实现:

复制代码
<template>
    <div class="nav">
        <!-- 导航栏:点击对应列表项通过路由跳转 -->
        <ul>
            <li v-for="(value,index) in nararr" :key="index">
                <router-link :to="value.url" >{{value.name}}
            </router-link>
            </li>
        </ul>
    </div>
</template>

<script>
export default {
    name:"NavDemo",
    data(){
        return{
            nararr:[
            {name:"首页",url:"/home"},
            {name:"MV",url:"/mv"},
            {name:"热门歌手",url:"/hot"},
          
        ]
        }  
    }
}

这里的导航都是通过路由进行跳转的

路由是在router/index.js中进行配置的,这个要新建一个

导入路由的方式

在mian.js中

复制代码
import Vue from 'vue'
import App from './App.vue'

// 导入路由
import router from "./router/index"

Vue.config.productionTip = false

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

这里是在main.js中写的。后面是导入模块的地址,前面是起的别名。

在route/index.js中

这里写具体的路径,还有各种导入的模块。

复制代码
// 导入Vue
import Vue from "vue";
// 导入路由
import VueRouter from "vue-router";
// 使用路由
Vue.use(VueRouter)
// 导入所有通过路由跳转的组件
import HomeDemo from "@/components/home/HomeDemo.vue";

const router = new VueRouter({
    routes:[
        {path:"/",component:HomeDemo},
        {path:"/home",component:HomeDemo},
        
    ]
})

// 默认导出路由
export default router

导入组件的方式

复制代码
<script>
// 导入组件
import TopDemo from './TopDemo.vue';
export default {
    name: "HomeDemo",
    data(){
        return{}
    },
  //注册成子组件
  components: {
        TopDemo,
        
    }
}
</script>

在script中导入组件,都是导入子组件,路径是组件的路径,名字命名一样就好。

保存公共数据的方法

首先,在我的电脑中,veu-cli路径中的这个添加文件夹mixin,

复制代码
// mixin混入:保存公共数据;可以定义多个mixin
// 导出mixin  
export const mixin1 = {
    data(){
        return{
            index:0
        }
    },
    methods:{
        clickli(i){
            this.arr[this.index].state = false;
            this.index = i;
            this.arr[i].state = true;
        }
    }
}

组件中mixin使用的地方

这里是在首页上面导航栏的部分使用mixin来存储数据

下面导航栏也一样

复制代码
<script>
// 导入mixin混入
import { mixin1 } from '../../mixin/index';
export default {
    name:"TopDemo",
    data(){
        return{
            arr:[
                {title:"首页",state:true},
                {title:"天猫",state:false},
                {title:"淘宝",state:false},
                {title:"京东",state:false}
            ],
            
        }
    },
    // 使用mixin
    mixins:[mixin1],
    methods:{
    }
}
</script>
相关推荐
下位子5 分钟前
『AI 编程』用 Claude Code 从零到一开发全栈减脂追踪应用
前端·ai编程·claude
tyro曹仓舒5 分钟前
Vue单文件组件到底需不需要写name
前端·vue.js
用户47949283569156 分钟前
面试官:讲讲2FA 双因素认证原理
前端·后端·安全
乐影7 分钟前
TS 模板字符串类型:从基础到进阶的类型编程魔法
前端·typescript
龙在天8 分钟前
CSS 属性值的计算与过程
前端
云鹤_9 分钟前
【Amis源码阅读】组件注册方法远比预想的多!
前端·低代码
xinfei11 分钟前
ES6 新特性 从 ECMAScript 2015(ES6)到 ECMAScript 2025
前端
GBVFtou13 分钟前
vue响应式 track 和trigger 过程
前端
耀耀切克闹灬21 分钟前
生成tag号的脚本
前端
Never_Satisfied24 分钟前
在JavaScript / HTML中,line-height是一个CSS属性
javascript·css·html