01、vue快速上手

作者: spilledyear | 来源:发表于2018-03-24 21:53 被阅读124次

vue官网
本文主要目的是为了让大家对vue有一个初步的了解,简单介绍创建一个vue应用的正常流程以及vue应用 对应的目录结构,顺便介绍了下vue组件的概念。

就定位而言,Vue和React很像,都是组件化,核心库只关注视图层,所以如果想构建一个复杂的单页应用,需要依赖其它的框架,比如:vue-router、vuex。如果你接触过AngularJS,学习Vue的时候会感觉很熟悉,使用上确实有一些相似之处,比如指令、管道。但AngualrJS是作为一个功能十分全面的框架,而Vue仅仅是作为一个视图层,所以定位不同,没什么可比性。

vue-cli使用

使用vue很简单,最方便的方式就是直接在 html文件中引入以下内容

<script src="https://cdn.jsdelivr.net/npm/vue"></script>

在工程化项目中,可以使用npm来安装vue,然和配合各种模块打包器(webpack)来管理应用。

npm install vue

官方为也为我们提供了一个命令行工具来快速搭建大型的vue应用:vue-cli。使用如下:

# 全局安装 vue-cli
npm install vue-cli -g

# 创建一个基于 webpack 模板的新项目 
vue init webpack vue-monitor

# 安装依赖
cd vue-monitor
npm run dev

如果对webpack有稍微的了解,我倒是觉得可以直接使用 vue-cli。webpack 太复杂了,在开发的过程中慢慢学习,毕竟这种工具也是为了方便开发,提高效率。在开发的过程中慢慢学习,用的多了,也就回了。

创建应用

官方文档其实写的还是很详细的,但是感觉太零碎了,没有个整体思路,这是我觉得不好的地方。
这里直接使用 vue-cli 创建一个应用。

vue init webpack vue-monitor
image.png

时间可能有点久,等待创建完成之后,进入根目录,然启动应用

cd vue-monitor
npm run dev

启动之后,界面是这样的,至此,已经成功创建了一个vue应用

image.png

项目结构

这里使用vs code 最为开发工具,打开刚刚创建的 vue-monitor ,它的目录结构如下:

image.png

这些文件都是自动生成的。build文件夹中的内容是用来构建应用的;config目录下是一些配置信息,比如正式环境和开发环境。src 目录中存的是源文件,代码就是放到这个目录下;staic目录中存的是编译后的文件,比如应用编译好之后,可以单独部署到服务器;test目录里面是一些测试相关的内容,暂时不太理解,先不使用。

对于开发来说,src目录才是关注的重点。一个正常的vue应用,src目录下应该包含以下文件夹

  • components 里面用于存放一个个的组件。
  • router 路由,在一个单页应用中,这是必不可少的一部分。
  • service 定义一些接口,便于与后台交互,与后台不同api交互的方法,都写到这里面。
  • image 存放图片资源
  • style 存放css样式,或者说通用样式吧。
  • store 一般稍微复杂一点的应用,都会 用上状态管理框架,这时会有一个 store 文件,用于管理状态

使用 vue-cli 创建的应用已经默认添加了 vue-router,但是没有用到vuex,从 package.json文件中可以看出:

image.png

其src目录结构如下:

image.png

主要关注 main.js 文件,因为这涉及到 webpack 的 配置 和 整个应用的启动流程。打开 build 下的 vue-loader.conf.js 文件,可以看到以下内容

image.png

这里涉及到webpack的配置,entry指定整个应用的入口文件,这里指定了 src目录下的 main.js作为入口文件。个人觉得这种东西不一定完全需要自己纯手工配置,vue-cli 就是用来提高效率的,能看懂就可以排查文件。当然在正式环境部署的时候,需要了解的更多一些。

组件结构

在 src 目录下,除了一个 main.js文件,还有一个 App.vue 文件,这里就涉及到另外一个概念:vue组件。
每个.vue文件,对应一个vue组件,也称单文件组件。App.vue 组件的内容如下:

image.png
  • template 标签里面的内容其实就是一些 html标签,简单来说就是用来展示内容。
  • script 里面就是正常的 js脚本,比如这里是导出 一个 名为 App的模块
  • style 里面就是样式,和常见的html文件类似

以上三部分内容就定义了一个基本的 vue组件。需要注意的是,如果你使用vs code作为你的开发工具,需要安装一个插件才能支持 vue 语法高亮:Vetur

组件使用方式

每个vue应用,都应该通过创建一个 vue根实例 开始的,创建一个vue实例很简单:

let vm = new Vue({
 //选项
})

就相当于是 new 一个对象吧,Vue本来就是一个全局对象。
组件的使用之前需要注册,所谓的注册就是在 vue 实例 或者 组件 的实例选项 components 中维护该组件,例如 main.js 文件

import Vue from 'vue'
import App from './App'
import router from './router'

Vue.config.productionTip = false

/* eslint-disable no-new */
new Vue({
  el: '#app',
  router,
  components: { App },
  template: '<App/>'
})

主要看这一段

new Vue({
  el: '#app',
  router,
  components: { App },
  template: '<App/>'
})

el 就是挂在点,其实就是 template中对应的id,这里能 使用 ‘#app',是因为在文件头 已经引入了 App组件,而App组件中的 template中有一个 id='app' 的div;router就是注册路由;components: { App } 就是注册App组件;template: '<App/>' 表示在项目启动后展示的内容就是 App.vue 中 template 的内容。当然,这里只是简单介绍组件的概念,具体的用法可以参考官方文档。

相关文章

  • 01、vue快速上手

    vue官网本文主要目的是为了让大家对vue有一个初步的了解,简单介绍创建一个vue应用的正常流程以及vue应用 对...

  • TS 入门和Vue实践

    TS 入门和Vue实践 一、TS 快速上手 从 JavaScript 程序员的角度总结思考,快速上手理解 Type...

  • vue快速上手

    vue是一个基于响应式编程思想、模块化设计实现的js框架,可以大大简化开发,是前端开发的首选框架。 1、基础语法 ...

  • vue快速上手

    1.数据双向绑定 更改数据也触发视图的相应更新 渲染html v-bind 双大括号语法不能作用在 HTML 特性...

  • Vue快速上手

    Vue是一个前端框架,简单来说,其目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。 国际惯例H...

  • Vue3快速上手

    Vue3-admin 快速上手实战项目[https://github.com/Miller-Wang/vue3-a...

  • Vue 快速上手(实例)

    Vue 快速上手 实例1: 渲染声明 渲染声明是 vue 的最核心模块。 vue 基于传统的 HTML 模板语法,...

  • Vue 基本知识

    vue3快速上手 body{-webkit-font-smoothing:an...

  • vue3.0项目创建

    Vue3.0-快速上手 创建Vue3的三种方式 Vue-cli Webpack Vite 利用Vue-cli创建V...

  • vue快速上手-1

    vue官方文档[https://cn.vuejs.org/v2/api/] 1. 搭建项目之前,请确认好你自己已经...

网友评论

    本文标题:01、vue快速上手

    本文链接:https://www.haomeiwen.com/subject/vcsxcftx.html