文章目录

  • ​​前言​​
  • ​​一、安装vue-cli脚手架​​
  • ​​二、熟悉Vue-cli开发方式​​
  • ​​三、Vue-cli开发todolist(组件形式)​​
  • ​​参考资料​​

前言

本篇博客是在vue-cli的学习笔记,若文章中出现相关问题,请指出!

  • 当前该链接失效了,有需要的小伙伴可以去b站或者技术胖官网去找相应的视频与笔记。

所有博客文件目录索引:​​博客目录索引(持续更新)​​

一、安装vue-cli脚手架

删除老的脚手架:​​npm uninstall -g vue-cli​

安装最新的脚手架到全局:​​npm install -g @vue/cli​


执行vue命令来创建脚手架


创建工程:​​vue create 项目名称​​。

  • 若是没有该vue的命令,找到你的vue-cli安装路径,并添加环境变量:​​D:\nodejs\installnpm\npm​​,即可使用!

若是要自定义一些配置的话如vue-router等,需要手动选择特征

vue-cli学习笔记 01、vue-cli脚手架_javascript

vue-cli学习笔记 01、vue-cli脚手架_vue.js_02

启动工程:​​npm run serve​




二、熟悉Vue-cli开发方式

​main.js​

// Vue实例中拿到createApp方法
import { createApp } from 'vue'
// 导入组件
import App from './App.vue'

// 将App组件挂载至id=app的div标签上
createApp(App).mount('#app')

​vue​​文件

<!-- 组件模板:视图 -->
<template>
<img alt="Vue logo" src="./assets/logo.png" />
<HelloWorld msg="My name is ChangLu!" />
</template>

<!-- 行为 -->
<script>
// 导入组件
import HelloWorld from "./components/HelloWorld.vue";

//导出组件
export default {
//组件的名称为App
name: "App",
//接收组件
components: {
HelloWorld,
},
};
</script>

<!-- 样式 -->
<!-- 原本不添加scoped就是全局样式;若是添加了scoped之后,只能作用当前组件使用(以及在本组件中应用的子组件) -->
<style scoped>
#app {
text-align: center;
color: #2c3e50;
margin-top: 60px;
}
h1 {
background-color: red;
}
</style>




三、Vue-cli开发todolist(组件形式)

需求:使用Vue-cli脚手架开发todolist,其中li标签通过使用组件的形式呈现。

实现

​App.vue​

<template>
<input ref="myinput" type="text" v-model="inputval" />
<button @click="handleClick">提交</button>
<ul>
<item v-for="(item, index) in itemArr" :key="index" :msg="item">
<button @click="handleDel(index)">删除</button>
</item>
</ul>
<!-- <div>{{ inputval }}</div> -->
</template>

<script>
// 导入组件(不管是Vue实例还是其他组件都要以import的方式导入,而不像之前全局变量Vue类中来获取到Vue的函数方法)
import { ref, reactive } from "vue";
import item from "./components/item.vue";

export default {
name: "App",
setup() {
let inputval = ref("");
const itemArr = reactive([]);

// 提交数据
const handleClick = () => {
itemArr.push(inputval.value);
inputval.value = "";
};
//删除指定记录
const handleDel = (index) => itemArr.splice(index, 1);

return { inputval, itemArr, handleClick, handleDel };
},
mounted() {
this.$refs.myinput.focus();
},
components: { item },
};
</script>

<style >
button {
margin-left: 20px;
}
</style>

​item.vue​

<template>
<li>
{{ msg }}
<slot></slot>
</li>
</template>

<script>
export default {
// 组件名称
name: "item",
props: ["msg"],
};
</script>

<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
</style>

说明:在父组件中实际上还出传递了插槽内容,该插槽内容引用的方法可以直接是父组件中的,完全可以调用!

vue-cli学习笔记 01、vue-cli脚手架_前端_03




参考资料

[1]. ​​vue-cli入门项目实战(超详细)​​


我是长路,感谢你的耐心阅读。如有问题请指出,我会积极采纳!
欢迎关注我的公众号【长路Java】,分享Java学习文章及相关资料
Q群:851968786 我们可以一起探讨学习
注明:转载可,需要附带上文章链接