这是一个创建于 738 天前的主题,其中的信息可能已经有所发展或是发生改变。

前言

vue2 正式版已经发布将近一个月了,
国庆过后就用在了公司的两个正式项目上,
还有一个项目下个月也会采用 vue2 进行重构
选择它没什么理由,如果非要说一个理由
那就是它的中文文档远比 react , angularjs 要友好

github:https://github.com/lzxb/vue2-demo

源码说明

项目目录说明

.
|-- config // 项目开发环境配置
| |-- index.js // 项目打包部署配置
|-- src // 源码目录
| |-- components // 公共组件
| |-- header.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/

开发教程

1.安装开发环境

vs code https://code.visualstudio.com

开发时所用的编辑器,内置了终端,开发时使它执行命令运行程序

Node.js https://nodejs.org

JS 服务器端的运行环境,内置 npm 包管理器,管理项目依赖的各种模块,编译代码,自动部署到服务器就全靠他了

2.安装全局模块

webpack

npm install -g webpack

webpack 是一款模块加载器兼打包工具,它能把各种资源,例如 JS (含 JSX )、 coffee 、样式(含 less/sass )、图片等都作为模块来使用和处理

gulp

npm install -g gulp

gulp 是一个自动化构建工具,开发者可以使用它在项目开发过程中自动执行常见任务

3.创建项目

创建项目目录,并且在项目目录下执行命令,初始化 package.json 文件
npm init

4.安装开发环境依赖模块 npm install --save-dev 模块名

npm install --save-dev webpack webpack-dev-server html-webpack-plugin url-loader file-loader css-loader less less-loader style-loader autoprefixer-loader babel-core babel-loader babel-plugin-transform-object-assign babel-preset-es2015 babel-preset-stage-0 vue-loader babel-helper-vue-jsx-merge-props babel-plugin-syntax-jsx babel-plugin-transform-vue-jsx gulp gulp-sftp del cross-env

5.安装生产环境依赖模块 npm install --save 模块名

npm install --save vue vue-router vuex

5.搭建开发环境

6.测试编译

src/template/index.html

<!DOCTYPE html>
<html lang="en"> <head>
<meta charset="UTF-8">
<title>vue2-demo</title>
</head> <body>
</body> </html>

src/main.js

alert('test')
1.运行程序执行命令: npm run dev
2.然后打开网址: http://localhost:3000/app/
3.如果浏览器弹出 test ,说明我们的开发环境已经搭建通过。

package.json 自定义命令说明

npm run dev      开发环境
npm run dev:test 将代码打包到测试服务器
npm run dev:dist 将代码打包到正式服务器

[转] 从零构建 vue2 + vue-router + vuex 开发环境到入门,实现基本的登录退出功能的更多相关文章

  1. Vue3: 如何以 Vite 创建,以 Vue Router, Vuex, Ant Design 开始应用

    本文代码: https://github.com/ikuokuo/start-vue3 在线演示: https://ikuokuo.github.io/start-vue3/ Vite 创建 Vue ...

  2. Vue Springboot (包括后端解决跨域)实现登录验证码功能详细完整版

    利用Hutool 基于Vue.ElementUI.Springboot (跨域)实现登录验证码功能 前言 一.Hutool是什么? 二.下面开始步入正题:使用步骤 1.先引入Hutool依赖 2.控制 ...

  3. Vue 2.0 + Vue Router + Vuex

    用 Vue.js 2.x 与相配套的 Vue Router.Vuex 搭建了一个最基本的后台管理系统的骨架. 当然先要安装 node.js(包括了 npm).vue-cli 项目结构如图所示: ass ...

  4. 从壹开始前后端分离 [ Vue2.0+.NET Core2.1] 二十一║Vue实战:开发环境搭建【详细版】

    缘起 哈喽大家好,兜兜转转终于来到了Vue实战环节,前边的 6 篇关于Vue基础文章我刚刚简单看了看,感觉写的还是不行呀,不是很系统,所以大家可能看上去比较累,还是得抽时间去润润色,修改修改语句和样式 ...

  5. 基于webpack和vue.js搭建开发环境

    前言 在对着产品高举中指怒发心中之愤后,真正能够解决问题的是自身上的改变,有句话说的好:你虽然改变不了全世界,但是你有机会改变你自己.秉承着“不听老人言,吃亏在眼前”的优良作风,我还是决定玩火自焚. ...

  6. windows环境下搭建vue+webpack的开发环境

    前段时间一直在断断续续的看vue的官方文档,后来就慢慢的学习搭建vue的开发环境,已经有将近两周了,每到最后一步的时候就会报错,搞的我好郁闷,搁置了好几天,今天又接着搞vue的开发环境,终于成功了.我 ...

  7. windows下搭建vue+webpack的开发环境

    1. 安装git其右键git bash here定位比cmd的命令行要准确,接下来的命令都是利用git bash here.2. 安装node.js一般利用vue创建项目是要搭配webpack项目构建 ...

  8. windows下vue+webpack前端开发环境搭建及nginx部署

    一.开发环境搭建 1.前端框架一般都依赖nodejs,我们首先要安装node.js.请参考http://www.cnblogs.com/wuac/p/6381819.html. 2.由于许多npm的源 ...

  9. Windows 环境下vue+webpack前端开发环境搭建

    一.开发环境搭建 1.前端框架一般依赖node.js,我们首先要安装node.js. 2.由于许多npm 的源都在国外的地址,安装起来特别慢,所以我们这里利用淘宝的镜像服务器. 安装命令为:npm i ...

随机推荐

  1. python代码格式

    1,函数名:不要大写,都用小写,单词之间用下划线分隔 2,注释:注释的时候#后面要带空格 3,方法与方法之间空格两行 4,使用方法时,里面的参数用  逗号和空格  隔开 5,使用方法时,里面的参数“= ...

  2. mpvue——小程序修改input的placehold样式

    前言 官方地址 https://developers.weixin.qq.com/miniprogram/dev/component/input.html 用placeholder-class的时候没 ...

  3. P2837 晚餐队列安排

    此题可能用动规不太好做,主要是状态转移方程很难想个人认为,思维发散的大佬们忽视. 我看了这位大佬的dp题解后才想到了方程,在此受我一膜%%% 嗯,说下思路: 先用a[i]数组存一下输入的编号: 然后用 ...

  4. SPOJ-LCS Longest Common Substring 【后缀自动机】

    题目分析: 用没出现过的字符搞拼接.搞出right树,找right集合的最小和最大.如果最小和最大分居两侧可以更新答案. 代码: #include<bits/stdc++.h> using ...

  5. MT【315】勾股数

    (高考压轴题)证明以下命题:(1)对任意正整数$a$都存在正整数$b,c(b<c)$,使得$a^2,b^2,c^2$成等差数列.(2)存在无穷多个互不相似的三角形$\Delta_n$,其边长$a ...

  6. maven 使用 log4j

    Log4j是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件.GUI组件,甚至是套接口服务器.NT的事件记录器.UNIX Syslog守护进程等:我们也可 ...

  7. 我眼里K-Means算法

    在我眼里一切都是那么简单,复杂的我也看不懂,最讨厌那些复杂的人际关系,唉,像孩子一样交流不好吗. 学习K-Means算法时,会让我想起三国志这个游戏,界面是一张中国地图,诸侯分立,各自为据.但是游戏开 ...

  8. (二分查找 拓展) leetcode 34. Find First and Last Position of Element in Sorted Array && lintcode 61. Search for a Range

    Given an array of integers nums sorted in ascending order, find the starting and ending position of ...

  9. elk每日清除30天索引脚本

      日常elk产生日志太多,故写个脚本放在定时任务,定时清理脚本 查询索引: curl -XGET 'http://127.0.0.1:9200/_cat/indices/?v'   删除索引: cu ...

  10. 关于Java____________Object类

    一说Java 不聊聊Object 如何说你了解Java 不多说 具体看源码去 下面是Object的方法 以及方法的作用如下 protected Object clone ()              ...