Vue2.x-3.x从入门到精通完整详细学习笔记day03

116 阅读9分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第3天,点击查看活动详情

vue 项目的运行流程

在工程化的项目中,vue 要做的事情很单纯:通过 main.js 把 App.vue 渲染到 index.html 的指定区域中。

其中:

① App.vue 用来编写待渲染的模板结构

② index.html 中需要预留一个 el 区域

<div id="app"></div>
<!-- built files will be auto injected -->

③ main.js 把 App.vue 渲染到了 index.html 所预留的区域中

//导入Vue的包,得到Vue的构造函数
import Vue from 'vue'
//导入App.vue根组件,将来要把App.vue中的模板结构,渲染到html里面
import App from './App.vue'

Vue.config.productionTip = false

//创建Vue实例对象
new Vue({
    // 把render函数指定的组件,渲染到html页面中(将App替换掉#app)
    render: h => h(App),
}).$mount('#app')


Vue实例的 .$mount('选择器') 来指定要替换的结构;该方法和在Vue实例里面使用el属性指定的效果是一样的!如下:

const vm =new Vue({......});
vm.$mount('#app');

const vm =new Vue({
	el:'#app',
	......
});
  • 引入一个自定义的Vue文件(举一个小例子:)

    1. 创建一个vue文件,命名为 ‘test.vue’

    2. 写入相应的vue代码

      注意:在 template 标签里面,只能有一个根元素,如果有大于等于两个的根元素的话,系统就会报错的(Component template should contain exactly one root element )!

      <template>
          <div>
              <h3>这是用户自定义的模板组件</h3>
          </div>
      </template>
      
    3. 在main.js文件里面导入我们自定义的模板组件并使用

      //导入Vue的包,得到Vue的构造函数
      import Vue from 'vue'
      //导入test.vue根组件,将来要把test.vue中的模板结构,渲染到html里面
      import Test from './test.vue'
      
      Vue.config.productionTip = false
      
      //创建Vue实例对象
      new Vue({
          // 把render函数指定的组件,渲染到html页面中(将App替换掉#app)
          render: h => h(Test),
      }).$mount('#app')
      
      
    4. 这就可以运行了!!!

      我们可以看一下 package.json 文件里面的内容,其中有一个调试,里面有 serve 和 build 两个选项,在我们平常开发的时候,我们使用第一个选项就可以了,发布的时候就要使用第二个选项了

      //第一种启动方式
      npm run serve
      //第二种启动方式
      npm run build
      
    5. 在浏览器中打开本地网页

      注意:打开之后,我们一定不要给运行的终端窗口给终止了,(在 Vs code 的终端里面,右上角的小叉号是隐藏当前终端----对我们项目运行是没有影响的,但是那个垃圾箱的按钮是终止,点击的话就相当于关闭该终端了,然后项目就停止运行了,为我们在浏览器里面也会无法访问的!!!)

vue 组件

1. 什么是组件化开发

组件化开发指的是:根据封装的思想,把页面上可重用的 UI 结构封装为组件,从而方便项目的开发和维护

2. vue 中的组件化开发

vue 是一个支持组件化开发的前端框架。

vue 中规定:组件的后缀名是 .vue。之前接触到的 App.vue 文件本质上就是一个 vue 的组件。

3. vue 组件的三个组成部分

每个 .vue 组件都由 3 部分构成,分别是:

  • template -> 组件的模板结构

  • script -> 组件的 JavaScript 行为

  • style -> 组件的样式

其中,每个组件中必须包含 template 模板结构,而 script 行为和 style 样式是可选的组成部分。(一般情况下:三者在vue文件里面的顺序是 template-script-style

<template>......</template>
<script>......</script>
<style>......</style>

在之前我们创建项目的时候就引进了 Less 预处理器,我们先使用的话,需要这样写:

<template>......</template>
<script>......</script>
<style lang="less">......</style>

3.1 template

vue 规定:每个组件对应的模板结构,需要定义到