vue全家桶(1)
1.环境搭建
1.1.脚手架搭建
1.1.1什么是脚手架
百度搜索一下脚手架长什么样子,它们是这样的:

从百度百科抄过来一段话: 脚手架是为了保证各施工过程顺利进行而搭设的工作平台。如果明白了脚手架在现实生活中的作用,那么,再来理解编程中的脚手架就容易了,有时我们听说前端脚手架工具,其实,这里的脚手架和现实中的脚手架类似,用人话讲就是一种工具,工地上的脚手架帮助工人施工,前端中的脚手架帮助编程人员完成各种工作,例如:代码编译、打包、压缩等,各种工具组合成一套编码环境,这种自己一步一步搭建环境的重复性劳动可以交给给脚手架工具来完成,你只需要在这种脚手架工具上完成自己的业务代码就行,下面我们会介绍到等vue-cli就是集成了vue的一种脚手架工具,同理,react、angular等都有相应的脚手架工具,例如:create-react-app、angular-cli等
1.1.2.vue-cli介绍
在没有vue-cli之前,搭建一个开发环境你可能需要花几天的时间,如果你并不熟悉webpack的话,你还得再去把webpack的各种配置学习一遍,这样几天时间很快就过去了,而你还没有真正动手开始写自己的应用逻辑,为了让开发者从配置中解放出来,vue官方提供了一套vue-cli脚手架,它不仅确保了各种构建工具能够基于智能的默认配置即可平稳衔接,还提供了配置调整的灵活性。有了vue-cli之后,你就可以专注于自己项目的业务逻辑的编写了。
从官方网站这样介绍:
Vue CLI 是一个基于 Vue.js 进行快速开发的完整系统,提供:
通过 @vue/cli 搭建交互式的项目脚手架。
通过 @vue/cli + @vue/cli-service-global 快速开始零配置原型开发。
一个运行时依赖 (@vue/cli-service),该依赖:
可升级;
基于 webpack 构建,并带有合理的默认配置;
可以通过项目内的配置文件进行配置;
可以通过插件进行扩展。
一个丰富的官方插件集合,集成了前端生态中最好的工具。
一套完全图形化的创建和管理 Vue.js 项目的用户界面。
1.1.3.使用 vue-cli 创建项目
1.2.项目目录介绍以及相关配置
2.单文件组件
在vue基础入门的课程中,我们讲过vue如何去注册组件,我们使用 Vue.component 来定义全局组件,紧接着用 new Vue({ el: '#container '}) 在每个页面内指定一个容器元素,这种方式在小规模项目中可以运行很好,但在复杂的项目中就会有很多缺点,因此,我们并不推荐使用Vue.component的方式来定义组件,而是使用单文件组件
2.1.什么是单文件组件?
通俗的说单文件组件就是每个文件就是一个组件,把不同的组件放到不同的文件中去,这种文件以.vue 结尾
2.2.单文件组件结构
单文件组件内部由三部分组成,即模板、js、css三部分,例如:
<template>
<div class="page">
{{message}}我是首页
</div>
</template>
<script type="text/ecmascript-6">
export default {
data () {
return {
message: 'hello, '
}
},
components: {
}
}
</script>
<style scoped>
</style>
2.3.实例
使用单文件组件完成下图页面
前面我们已经讲过使用vue-cli创建项目了,你需要在src目录下写相应的代码
1.在src目录下的components目录下新建MyHeader.vue文件,添加下面内容
<template>
<div class="page">
{{ title }}
</div>
</template>
<script type="text/ecmascript-6">
export default {
data () {
return {
title: '这是网页头部'
}
}
}
</script>
<style>
.page {
width: 100%;
height: 60px;
background-color: black;
color: white;
text-align: center;
line-height: 60px;
font-size: 20px;
}
</style>
2.重复上一步,分别添加MyContent.vue文件和MyFooter文件
MyContent.vue
<template>
<div class="page">
{{message}}
</div>
</template>
<script type="text/ecmascript-6">
export default {
data () {
return {
message: '这里是主体内容'
}
},
components: {
}
}
</script>
<style scoped>
.page{
width: 100%;
height: 400px;
background-color: orangered;
font-size: 40px;
text-align: center;
line-height: 400px;
color: white;
}
</style>
MyFooter
<template>
<div class="page">
{{message}}
</div>
</template>
<script type="text/ecmascript-6">
export default {
data () {
return {
message: '这里是底部内容'
}
},
components: {
}
}
</script>
<style scoped>
.page{
width: 100%;
height: 200px;
background-color: black;
font-size: 40px;
text-align: center;
line-height: 200px;
color: white;
}
</style>
在src/App.vue文件中添加内容
<template>
<div class="page">
<router-view></router-view>
<my-header></my-header>
<my-content></my-content>
<my-footer></my-footer>
</div>
</template>
<script type="text/ecmascript-6">
import MyHeader from '@/components/MyHeader'
import MyContent from '@/components/MyContent'
import MyFooter from '@/components/MyFooter'
export default {
data () {
return {
name: 111
}
},
components: {
MyHeader,
MyContent,
MyFooter
}
}
</script>
<style scoped>
</style>
4.运行查看效果
在终端里面执行命令
npm start
vue全家桶(1)的更多相关文章
- 用 Vue 全家桶二次开发 V2EX 社区
一.开发背景 为了全面的熟悉Vue+Vue-router+Vuex+axios技术栈,结合V2EX的开放API开发了这个简洁版的V2EX. 在线预览 (为了实现跨域,直接npm run dev部署的, ...
- Vue全家桶
简介 “简单却不失优雅,小巧而不乏大匠”. Vue.js 是一个JavaScriptMVVM库,是一套构建用户界面的渐进式框架.它是以数据驱动和组件化的思想构建的,采用自底向上增量开发的设计. 为什么 ...
- 从零开始系列之vue全家桶(3)安装使用vuex
什么是vuex? vuex:Vue提供的状态管理工具,用于同一管理我们项目中各种数据的交互和重用,存储我们需要用到数据对象. 即data中属性同时有一个或几个组件同时使用,就是data中共用的属性. ...
- 使用vue全家桶制作博客网站
前面的话 笔者在做一个完整的博客上线项目,包括前台.后台.后端接口和服务器配置.本文将详细介绍使用vue全家桶制作的博客网站 概述 该项目是基于vue全家桶(vue.vue-router.vuex.v ...
- 转载: 使用vue全家桶制作博客网站 HTML5 移动网站制作的好教程
使用vue全家桶制作博客网站 前面的话 笔者在做一个完整的博客上线项目,包括前台.后台.后端接口和服务器配置.本文将详细介绍使用vue全家桶制作的博客网站 概述 该项目是基于vue全家桶(vue. ...
- Vue全家桶介绍
一直不清楚全家桶是什么玩意,上网搜了一下,才知道就是平时项目中使用的几个依赖包,下面分享一下 Vue 全家桶介绍 Vue有著名的全家桶系列,包含了vue-router(http://router.vu ...
- 一个简单的假vue全家桶(vue+vue-router+require)
首先说明我觉得这是一个比较好理解的vue全家桶(虽然是假的),模块化也是用require来做的,而且如果后期有必要压缩我也会用gulp来做 1.依赖个个本地模块,require只是用来载入page,这 ...
- Vue 全家桶 + Electron 开发的一个跨三端的应用
代码地址如下:http://www.demodashi.com/demo/11738.html GitHub Repo:vue-objccn Follow: halfrost · GitHub 利用 ...
- Vue全家桶了解一下(待补充)
vue全家桶了解一下 一.vue+vue-router+vuex+axios1.vue:使用vue-cli,生成最基本的vue项目2.vue-router:vue项目中的路由管理插件3.vuex:vu ...
- 升级vue全家桶过程记录
背景 如果你使用了element-ui的el-tabs组件,并且想要单独升级element-ui至2.10.0,你会发现,使用了el-tabs组件的页面只要打开就卡死.原因是element-ui~2. ...
随机推荐
- Java实现 LeetCode 541 反转字符串 II(暴力大法)
541. 反转字符串 II 给定一个字符串和一个整数 k,你需要对从字符串开头算起的每个 2k 个字符的前k个字符进行反转.如果剩余少于 k 个字符,则将剩余的所有全部反转.如果有小于 2k 但大于或 ...
- Java实现 蓝桥杯VIP 算法训练 s01串
题目描述 s01串初始为" 0" 按以下方式变换 0变1,1变01 数据规模和约定 0~19 输入 1个整数(0~19) 输出 n次变换后s01串 样例输入 3 样例输出 101 ...
- Java实现 蓝桥杯VIP 算法提高 数字黑洞
算法提高 数字黑洞 时间限制:1.0s 内存限制:256.0MB 问题描述 任意一个四位数,只要它们各个位上的数字是不全相同的,就有这样的规律: 1)将组成该四位数的四个数字由大到小排列,形成由这四个 ...
- Java中输入时IO包与Scanner的区别
最常用的一个IO控制台输入的 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream ...
- Java实现LeetCode_0014_LongestCommonPrefix
package javaLeetCode.primary; /** * Write a function to find the longest common prefix string amongs ...
- 关于virgo-tomcat-server-3.6.0.RELEASE服务的启动
1.先查看程序是否启动,如果已经启动可以执行第3步的操作进行关闭. [user01@ ~]$ # ps -ef|grep java //查看virgo-tomcat-server的java进程是否存在 ...
- SmokePing 快速搭建
SmokePing介绍 smokeping是来监控IDC机房网络质量情况,可以从监控图上的延时与丢包情况分辨出机房的网络是否稳定,是否为多线,是否为BGP机房以及到各城市的三个运行商网络各是什么情况. ...
- linux安装redis-6.0.1单机和集群
redis作为一个直接操作内存的key-value存储系统,也是一个支持数据持久化的Nosql数据库,具有非常快速的读写速度,可用于数据缓存.消息队列等. 一.单机版安装 1.下载redis 进入re ...
- ubuntu12.04 dnw2 fl2440 配置
1.安装libusb-dev sudo apt-get install libusb-dev 2.dnw2编译配置 源码如下,将其保存为dnw2.c 编译命令 gcc dnw2.c -o dnw2 - ...
- 懒羊羊找朋友(struct实现优先排序)
4907: 懒羊羊找朋友(点击) 时间限制: 1 Sec 内存限制: 128 MB ...