Vue脚手架的使用+render函数+ref属性+props配置项+mixin混入+scoped样式+TodoList案例(静态)解析,尚硅谷Vue系列教程学习笔记(7)

尚硅谷Vue系列教程学习笔记(7)

  • 参考课程:《尚硅谷Vue2.0+Vue3.0全套教程丨vuejs从入门到精通》
  • 参考链接:https://www.bilibili.com/video/BV1Zy4y1K7SH?vd_source=4f4d3466cdc2c5a2539504632c862ce7
  • 笔记上传说明:上述课程中共有168节小课,对每10次课的笔记整合之后上传一次。
  • 详细代码案例请移步本人gitee仓库: vue_basic案例代码实现

目录

    • 尚硅谷Vue系列教程学习笔记(7)
        • 061-创建Vue脚手架
        • 062-分析脚手架结构
        • 063-render函数
        • 064-修改默认配置
        • 065-ref属性
        • 066-props配置项
        • 067-mixin混入
        • 068-插件
        • 069-scoped样式
        • 070-TodoList案例-静态

061-创建Vue脚手架

Vue脚手架是一个官方提供的标准化的开发工具。

Vue CLI中的CLI表示:command/line/interface。

使用npm包管理和vue-cli脚手架创建项目的案例代码:


1.npm create vue_demo,一路回车,之后等待项目创建成功。
2.npm install(如果需要安装一些依赖包的话,使用该命令)
3.npm run serve(运行刚刚创建好的vue_demo项目)

062-分析脚手架结构

Vue-CLI创建的项目结构:
1.gitgnore:git配置文件,包含:设置哪些文件push,哪些文件不允许push上传等;
2.babel.config.js:babel的控制文件;
3.package.json:只要项目是由npm创建的,都有这个文件,包含了安装包的说明和项目的相关配置属性等;
其中包含的一些命令解释:
vue-cli-service serve:表示将Vue项目配合自动生成的服务器在浏览器中使用;
vue-cli-service build:表示最后在完成了Vue文件的编写之后,调用该命令完成最后的build构建,生成.html/.css/.js文件等;
vue-cli-service lint:执行之后,Vue会对项目中的所有.Vue/.js等文件的语法进行一遍检查;
4.package-lock.json:是安装包版本控制文件;
5.README.md文件:对项目的说明;
6.src/main.js文件:

/**
 * 该文件是整个项目的入口文件
 * **/

//引入Vue
import { createApp } from 'vue'
//引入App组件,它是所有组件的父组件
import App from './App.vue'

//创建Vue实例对象
createApp(App).mount('#app')

7.App.vue文件:






8.assets目录:存放静态资源,便于项目合作开发者同时使用其中的资源文件。

9.components目录:所有新创建的组件放入到该目录下;

10.“<%= BASE_URL %>favicon.ico"相当于”./favicon.ico",这里的<%= BASE_URL %>就相当于./

11.Vue-CLI项目中的public目录下放入的index.html文件中的配置解析:




  
    
    
    
    
    
    
    
    
    <%= htmlWebpackPlugin.options.title %>
  
  
    
    

    
    
063-render函数

重点:在Vue-CLI脚手架项目中,App.vue文件中引入的vue文件为:

 "module": "dist/vue.runtime.esm-bundler.js",

上述的vue.runtime.esm-bundler.js文件是不完整的vue,对App.vue中使用template的地方无法解析,解决办法:
1.将放入到模板中的代码放入到render函数中;
2.使用完整版的带有模板解析功能的Vue.js文件;

重点:render函数详细解析

render(createElement){
    //参数的使用
    createElement('h1','你好啊!')
}

//另外一种写法
render:(createElement) => {
    //参数的使用
    createElement('h1','你好啊!')
}

//对上述另外一种写法的简写方法
render:createElement=> createElement('h1','你好啊!')

//继续简写
render:h => h('h1','你好啊!')


//render函数中传入的参数为:createElement

重点:Vue包含核心+模板解析器,且模板解析器占Vue文件的总体积为Vue文件总体积的将近三分之一。所以使用精简版的Vue文件的目的是:在Vue使用webpack打包完成之后,Vue文件中包含的模板解析器没有作用了,这就是使用精简版的不包含模板解析器的Vue的原因。

vue.runtime.js系列Vue文件是Vue运行时的js文件,体积均小于Vue.js文件。

注意 :.Vue文件中的