前言

一个vue的demo

源码说明

项目目录说明

.
|-- config // 项目开发环境配置
| |-- index.js // 项目打包部署配置
|-- src // 源码目录
| |-- components // 公共组件
| |-- header.vue // 页面头部公共组件
| |-- footer.vue // 页尾头部公共组件
| |-- index.js // 加载各种公共组件
| |-- config // 路由配置和程序的基本信息配置
| |-- routes.js // 配置页面路由
| |-- css // 各种css文件
| |-- common.css // 全局通用css文件
| |-- iconfont // 各种字体图标
| |-- images // 公共图片
| |-- less // 各种less文件
| |-- common.less // 全局通用less文件
| |-- pages // 页面组件
| |-- home // 个人中心
| |-- index // 网站首页
| |-- login // 登录
| |-- signout // 退出
| |-- store // vuex的状态管理
| |-- index.js // 加载各种store模块
| |-- user.js // 用户store
| |-- template // 各种html文件
| |-- index.html // 程序入口html文件
| |-- util // 公共的js方法,vue的mixin混合
| |-- app.vue // 页面入口文件
| |-- main.js // 程序入口文件,加载各种公共组件
|-- .babelrc // ES6语法编译配置
|-- gulpfile.js // 启动,打包,部署,自动化构建
|-- webpack.config.js // 程序打包配置
|-- server.js // 代理服务器配置
|-- README.md // 项目说明
|-- package.json // 配置项目相关信息,通过执行 npm init 命令创建
.

开发环境依赖模块说明

webpack相关模块

webpack                               // 用来构建打包程序
webpack-dev-server // 开发环境下,设置代理服务器
html-webpack-plugin // html 文件编译
url-loader // 图片 转化成base64格式
file-loader // 字体 将字体文件打包
css-loader // css 生成
less // css 预处理器less
less-loader // css 预处理器less的webpack插件
style-loader // css 插入到style标签
autoprefixer-loader // css 浏览器兼容性问题处理
babel-core // ES6 代码转换器
babel-loader // ES6 代码转换器,webpack插件
babel-plugin-transform-object-assign // ES6 Object.assign方法做兼容处理
babel-preset-es2015 // ES6 代码编译成现在浏览器支持的ES5
babel-preset-stage-0 // ES6 ES7要使用的语法阶段
vue-loader // vue 组件编译
babel-helper-vue-jsx-merge-props // vue jsx语法编译
babel-plugin-syntax-jsx // vue jsx语法编译
babel-plugin-transform-vue-jsx // vue jsx语法编译

gulp相关模块

gulp                                  // 用来构建自动化工作流
gulp-sftp // 将代码自动部署到服务器上
del // 代码部署成功后,删除本地编译的代码

其他模块

cross-env                             // 解决跨平台设置NODE_ENV的问题

生产模块依赖说明

vue全家桶

vue                                   // 构建用户界面的
vue-router // 路由
vuex // 组件状态管理

页面说明

/login                                // 登录,不需要登录可以访问
/signout // 退出登录,需要登录后才可以访问
/home // 个人中心,需要登录后才可以访问
/ // 首页,不需要登录可以访问
* // 强制跳转到登录页面

运行程序

npm install
npm run dev
http://localhost:3000/app/

p {
margin-top: 16px;
}
.markdown-body blockquote > *:first-child {
margin-top: 0;
}
.markdown-body blockquote > *:last-child {
margin-bottom: 0;
}
.markdown-body pre > code {
background: rgba(0, 0, 0, 0) none repeat scroll 0 0;
border: 0 none;
font-size: 14px;
margin: 0;
padding: 0;
white-space: pre;
word-break: normal;
}
.markdown-body .highlight {
background: #fff none repeat scroll 0 0;
margin-bottom: 16px;
}
.markdown-body .highlight pre {
margin-bottom: 0;
word-break: normal;
}
.markdown-body .highlight .il, .markdown-body .highlight .m, .markdown-body .highlight .mf, .markdown-body .highlight .mh, .markdown-body .highlight .mi, .markdown-body .highlight .mo {
color: #945277;
}
.markdown-body .highlight .s, .markdown-body .highlight .s1, .markdown-body .highlight .s2, .markdown-body .highlight .sb, .markdown-body .highlight .sc, .markdown-body .highlight .sd, .markdown-body .highlight .se, .markdown-body .highlight .sh, .markdown-body .highlight .si, .markdown-body .highlight .sx {
color: #df5000;
}
.markdown-body .highlight .kc, .markdown-body .highlight .kd, .markdown-body .highlight .kn, .markdown-body .highlight .kp, .markdown-body .highlight .kr {
font-weight: 700;
}
.markdown-body .highlight .kt {
color: #458;
font-weight: 700;
}
.markdown-body .highlight .k, .markdown-body .highlight .o {
font-weight: 700;
}
.markdown-body .highlight .c, .markdown-body .highlight .c1, .markdown-body .highlight .cm {
color: #998;
font-style: italic;
}
.markdown-body .highlight .cp {
color: #999;
font-weight: 700;
}
.markdown-body .highlight .cs {
color: #999;
font-style: italic;
font-weight: 700;
}
.markdown-body .highlight .n {
color: #333;
}
.markdown-body .highlight .na, .markdown-body .highlight .nv, .markdown-body .highlight .vc, .markdown-body .highlight .vg, .markdown-body .highlight .vi {
color: teal;
}
.markdown-body .highlight .nb {
color: #0086b3;
}
.markdown-body .highlight .nc {
color: #458;
font-weight: 700;
}
.markdown-body .highlight .no {
color: #094e99;
}
.markdown-body .highlight .ni {
color: purple;
}
.markdown-body .highlight .ne {
color: #900;
font-weight: 700;
}
.markdown-body .highlight .nf {
color: #945277;
font-weight: 700;
}
.markdown-body .highlight .nn {
color: #555;
}
.markdown-body .highlight .nt {
color: navy;
}
.markdown-body .highlight .err {
background-color: #e3d2d2;
color: #a61717;
}
.markdown-body .highlight .gd {
background-color: #fdd;
color: #000;
}
.markdown-body .highlight .gd .x {
background-color: #faa;
color: #000;
}
.markdown-body .highlight .ge {
font-style: italic;
}
.markdown-body .highlight .gr {
color: #a00;
}
.markdown-body .highlight .gh {
color: #999;
}
.markdown-body .highlight .gi {
background-color: #dfd;
color: #000;
}
.markdown-body .highlight .gi .x {
background-color: #afa;
color: #000;
}
.markdown-body .highlight .go {
color: #888;
}
.markdown-body .highlight .gp {
color: #555;
}
.markdown-body .highlight .gs {
font-weight: 700;
}
.markdown-body .highlight .gu {
color: purple;
font-weight: 700;
}
.markdown-body .highlight .gt {
color: #a00;
}
.markdown-body .highlight .ow {
font-weight: 700;
}
.markdown-body .highlight .w {
color: #bbb;
}
.markdown-body .highlight .sr {
color: #017936;
}
.markdown-body .highlight .ss {
color: #8b467f;
}
.markdown-body .highlight .bp {
color: #999;
}
.markdown-body .highlight .gc {
background-color: #eaf2f5;
color: #999;
}
.markdown-body .task-list-item {
list-style-type: none;
}
.markdown-body .task-list-item input {
float: left;
margin: 0.3em 0 0.25em -1.6em;
vertical-align: middle;
}
.markdown-body html input[disabled] {
cursor: default;
}
.markdown-body .task-list-item + .task-list-item {
margin-top: 3px;
}
.markdown-body > *:first-child {
margin-top: 0;
}
.markdown-body > *:last-child {
margin-bottom: 0;
}
.mceItemTable, .mceItemTable td, .mceItemTable th, .mceItemTable caption, .mceItemVisualAid{border:none;}
-->

用vue开发一个app(3,三天的成果)的更多相关文章

  1. 用vue开发一个app(4,一个久等了的文章)H5直播平台登录注册(1)

    我上一篇关于vue的文章和这一篇时间隔了有点久了.最近终于写完了. 因为我一直想写个有点实绩的东西,而不是随便写一个教程一样东西.结合最近在项目中学到的经验和我的一点创意. 首先介绍下这是个什么! H ...

  2. 用vue开发一个app(2,main.js)

    昨天跟着vue的官网搭建了vue的一个脚手架,我也是第一次用VUE一切都在摸索阶段. 今天试着看下里面脚手架里面有点什么东西 先看看main.js 导入了3个模块 一个vue,一个app,还有rout ...

  3. 用vue开发一个app(1,基础环境配置)

    在今天之前,我没有很系统的看过,学习过vue.也是第一次尝试用vue写个小应用 现在开始研究配环境 这边参考的是https://cn.vuejs.org/v2/guide/installation.h ...

  4. 后移动互联网时代:到底还要不要开发一个App?

    后移动互联网时代,到底是什么样的一个时代? 首先,后移动互联网时代中,产生头部应用的几率变小了,像微信这样巨头式的App很难在产生第二个.其次,后移动互联网时代,物联网发展迅速,所有的智能硬件都需要一 ...

  5. 开发一个App要多少钱?APP开发报价单,APP开发外包有哪些注意事项-广州达到信息www.ddapp.com.cn

    来源:广州达到信息著作权归广州达到信息所有.商业转载请联系作者获得授权,非商业转载请注明出处. 作为一个APP开发从业者,经常会有人问到:开发一个App要多少钱?下面针对这个问题来好好解答解答正经的谈 ...

  6. 行内人解读开发一个App需要多少钱?

    对于很多互联网的创业者来说,评估前期的创业成本是很重要的.在这几年的创业大潮中,伴随着“互联网+”和“互联网思维”的普及,很多创业项目选择了开发app作为创业项目的载体.在我接触到的很多创业者,找Ap ...

  7. 用Vue开发一个实时性时间转换功能,看这篇文章就够了

    前言 最近有一个说法,如果你看见某个网站的某个功能,你就大概能猜出背后的业务逻辑是怎么样的,以及你能动手开发一个一毛一样的功能,那么你的前端技能算是进阶中高级水平了.比如咱们今天要聊的这个话题:如何用 ...

  8. 开发一个 app 有多难?

    171 个回答 默认排序​ 道衍天机 有事情的加微信1293190838找我 1,150 人赞同了该回答 ----------------------------------------------- ...

  9. 开发一个app需要多少钱

    App应用开发是目前最热门的产业,很多企业都想通过app的开发来进入移动互联网市场分一杯羹. 那么你一定很想知道开发一个app需要多少钱吧?那下面企业帮就来帮大家计算一下费用吧. 面对app抄袭成风的 ...

随机推荐

  1. python+selenium自动化软件测试(第9章) :Logging模块

    9.1 Logging模块 什么是日志记录?记录是跟踪运行时发生的事件的一种手段.该软件的开发人员将记录调用添加到其代码中,以指示某些事件已发生.事件由描述性消息描述,该消息可以可选地包含可变数据(即 ...

  2. Django 学习笔记(七)数据库基本操作(增查改删)

    一.前期准备工作,创建数据库以及数据表,详情点击<Django 学习笔记(六)MySQL配置> 1.创建一个项目 2.创建一个应用 3.更改settings.py 4.更改models.p ...

  3. 使用VMware Workstation安装win7镜像文件时遇见的错误

    最近打算使用虚拟机安装个系统玩玩,就去网站上找了教程安装下win7系统.但是在安装过程中遇见两个问题,现在把遇见的问题总结记录一下,以及解决方法罗列一下. 我当时使用的是VMware 12版的,系统是 ...

  4. 简述C/C++调用lua中实现的自定义函数

    1.首先说下目的,为什么要这么做 ? 正式项目中,希望主程序尽量不做修改,于是使用C/C++完成功能的主干(即不需要经常变动的部分)用lua这类轻量级的解释性语言实现一些存在不确定性的功能逻辑:所以, ...

  5. Tomcat迁移到WebsphereURL获取中文参数乱码问题

    URL携带中文参数时,tomcat通常用两种方法可以解决中文乱码问题: String param = new String(request.getParameter("param " ...

  6. 大数据平台搭建-hadoop/hbase集群的搭建

    版本要求 java 版本:1.8.*(1.8.0_60) 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downl ...

  7. prop解决一个checkbox选中后再次选中失效的问题

    //问题点 初始状态复选框没有全选, 点击全选按钮调用checkAll方法, 实现了全选, 然后点击全不选按钮, 实现了全不选, 然后再次点击全选按钮, 结果却木有全选, 再反复点击木有任何反应. d ...

  8. 广度优先搜索(BFS)——迷宫的最短路径

    宽度优先搜索按照距开始状态由近到远的顺序进行搜索,因此可以很容易的用来求最短路径,最少操作之类问题的答案. 宽度优先搜索介绍(一篇不错的文章). 题目描述: 给定一个大小为N*M的迷宫.迷宫有通道和墙 ...

  9. Appium环境搭建(python)

    appium是一个开源的,适用于原生或者移动网络和混合应用程序在 iOS 和 Android 平台上的的开源自动化测试框架.在这里,详细的介绍Appium的环境搭建步骤. 1.安装Node.js在ht ...

  10. sed修炼系列(一):花拳绣腿之入门篇

    本文为花拳绣腿招式入门篇,主要目的是入门,为看懂sed修炼系列(二):武功心法做准备.虽然是入门篇,只介绍了基本工作机制以及一些选项和命令,但其中仍然包括了很多sed的工作机制细节.对比网上各sed相 ...