首页 技术 正文
技术 2022年11月11日
0 收藏 541 点赞 2,583 浏览 9926 个字

前言

一个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/

<!–
.blobmd{padding:40px;}
.markdown-body h1, .markdown-body h2, .markdown-body h3, .markdown-body h4, .markdown-body h5, .markdown-body h6 {
font-weight: 700;
line-height: 1.4;
margin-bottom: 16px;
margin-top: 1em;
position: relative;
}
.markdown-body ol, .markdown-body ul {
padding: 0 0 0 2em;
}
.markdown-body .highlight pre, .markdown-body pre {
background-color: #f7f7f7;
border-radius: 3px;
font-size: 85%;
line-height: 1.45;
overflow: auto;
padding: 16px;
}
.markdown-body a {
background: rgba(0, 0, 0, 0) none repeat scroll 0 0;
color: #4183c4;
text-decoration: none;
}
.markdown-body a:active, .markdown-body a:hover {
outline: 0 none;
text-decoration: underline;
}
.markdown-body a:focus {
text-decoration: underline;
}
.markdown-body strong {
font-weight: 700;
}
.markdown-body h1 code, .markdown-body h1 tt, .markdown-body h2 code, .markdown-body h2 tt, .markdown-body h3 code, .markdown-body h3 tt, .markdown-body h4 code, .markdown-body h4 tt, .markdown-body h5 code, .markdown-body h5 tt, .markdown-body h6 code, .markdown-body h6 tt {
font-size: inherit;
}
.markdown-body h1 {
border-bottom: 1px solid #eee;
font-size: 2.25em;
line-height: 1.2;
margin: 0.67em 0;
padding-bottom: 0.3em;
}
.markdown-body h1 .coding-anchor {
margin-top: -20px;
padding-top: 20px;
}
.markdown-body h1:hover .coding.icon.coding-anchor {
visibility: visible;
}
.markdown-body img {
border: 0 none;
box-sizing: border-box;
max-width: 100%;
}
.markdown-body hr {
background: #e7e7e7 none repeat scroll 0 0;
border: 0 none;
box-sizing: content-box;
height: 4px;
margin: 16px 0;
overflow: hidden;
padding: 0;
}
.markdown-body hr::before {
content: “”;
display: table;
}
.markdown-body hr::after {
clear: both;
content: “”;
display: table;
}
.markdown-body pre {
font: 1em monospace,monospace;
margin-bottom: 16px;
margin-top: 0;
overflow: auto;
overflow-wrap: normal;
}
.markdown-body pre code {
background-color: transparent;
border: 0 none;
display: inline;
line-height: inherit;
margin: 0;
max-width: initial;
overflow: initial;
overflow-wrap: normal;
padding: 0;
}
.markdown-body pre code::after, .markdown-body pre code::before {
content: normal;
}
.markdown-body code {
background-color: rgba(0, 0, 0, 0.04);
border-radius: 3px;
font-family: Consolas,Liberation Mono,Menlo,Courier,monospace;
font-size: 85%;
margin: 0;
padding: 0.2em 0;
}
.markdown-body code::after, .markdown-body code::before {
content: ” “;
letter-spacing: -0.2em;
}
.markdown-body kbd {
background-color: #e7e7e7;
background-image: linear-gradient(#fefefe, #e7e7e7);
background-repeat: repeat-x;
border: 1px solid #cfcfcf;
border-radius: 2px;
color: #000;
display: inline-block;
font: 11px Consolas,Liberation Mono,Menlo,Courier,monospace;
padding: 3px 5px;
}
.markdown-body input {
color: inherit;
font: 13px/1.4 Helvetica,arial,freesans,clean,sans-serif,”Segoe UI Emoji”,”Segoe UI Symbol”;
margin: 0;
}
.markdown-body input[type=”checkbox”] {
box-sizing: border-box;
padding: 0;
}
.markdown-body table {
border-collapse: collapse;
border-spacing: 0;
display: block;
margin-bottom: 16px;
margin-top: 0;
overflow: auto;
width: 100%;
word-break: keep-all;
}
.markdown-body table th {
border: 1px solid #ddd;
font-weight: 700;
padding: 6px 13px;
}
.markdown-body table td {
border: 1px solid #ddd;
padding: 6px 13px;
}
.markdown-body table tr {
background-color: #fff;
border-top: 1px solid #cfcfcf;
}
.markdown-body table tr:nth-child(2n) {
background-color: #f8f8f8;
}
.markdown-body td, .markdown-body th {
padding: 0;
}
.markdown-body * {
box-sizing: border-box;
line-height: 1.6;
}
.markdown-body h2 {
border-bottom: 1px solid #eee;
font-size: 1.75em;
line-height: 1.225;
padding-bottom: 0.3em;
}
.markdown-body h2 .coding-anchor {
margin-top: -14px;
padding-top: 14px;
}
.markdown-body h2:hover .coding.icon.coding-anchor {
visibility: visible;
}
.markdown-body h3 {
font-size: 1.5em;
line-height: 1.43;
}
.markdown-body h3 .coding-anchor {
margin-top: -14px;
padding-top: 14px;
}
.markdown-body h3:hover .coding.icon.coding-anchor {
visibility: visible;
}
.markdown-body h4 {
font-size: 1.25em;
}
.markdown-body h4 .coding-anchor {
margin-top: -12px;
padding-top: 12px;
}
.markdown-body h4:hover .coding.icon.coding-anchor {
visibility: visible;
}
.markdown-body h5 {
font-size: 1em;
}
.markdown-body h5 .coding-anchor {
margin-top: -8px;
padding-top: 8px;
}
.markdown-body h5:hover .coding.icon.coding-anchor {
visibility: visible;
}
.markdown-body h6 {
color: #777;
font-size: 1em;
}
.markdown-body h6 .coding-anchor {
margin-top: -8px;
padding-top: 8px;
}
.markdown-body h6:hover .coding.icon.coding-anchor {
visibility: visible;
}
.markdown-body blockquote {
border-left: 4px solid #ddd;
color: #777;
margin: 0 0 16px;
padding: 0 15px;
}
.markdown-body ul {
margin-bottom: 16px;
margin-top: 0;
}
.markdown-body ul ol {
list-style-type: lower-roman;
margin-bottom: 0;
margin-top: 0;
}
.markdown-body ul ol ol, .markdown-body ul ul ol {
list-style-type: lower-alpha;
}
.markdown-body ol {
margin-bottom: 16px;
margin-top: 0;
}
.markdown-body ol ol {
list-style-type: lower-roman;
margin-bottom: 0;
margin-top: 0;
}
.markdown-body ol ol ol, .markdown-body ol ul ol {
list-style-type: lower-alpha;
}
.markdown-body li {
line-height: 1.4;
}
.markdown-body dd {
margin-left: 0;
}
.markdown-body p {
margin-bottom: 16px;
margin-top: 0;
}
.markdown-body dl {
margin-bottom: 16px;
margin-top: 0;
padding: 0;
}
.markdown-body dl dt {
font-size: 1em;
font-style: italic;
font-weight: 700;
margin-top: 16px;
padding: 0;
}
.markdown-body dl dd {
margin-bottom: 16px;
padding: 0 16px;
}
.markdown-body li >–> 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;}
–>

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,492
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,907
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,740
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,493
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:8,132
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:5,295