大三毕业设计,从前端到后端到数据库,从pc端web到移动端微信小程序
大三毕业设计,从前端到后端到数据库一、前端vue1.创建一个vue3.0项目2.配置webpack3.创建登录界面login页面二、后端三、微信小程序四、数据库总结一、前端vue1.创建一个vue3.0项目创建的vue3.0项目选择bablevue-routervuexscss(node-loader)2.配置webpack创建vue.config.js代码如下(示例):const path =
·
大三毕业设计,从前端到后端到数据库,从pc端web到移动端微信小程序
秋秋917988385
一、前端vue
1.创建一个vue3.0项目
创建的vue3.0项目选择
bable
vue-router
vuex
scss(node-loader)
2.配置webpack
创建vue.config.js
代码如下(示例):
const path = require('path');
const resolve = dir => path.join(__dirname, dir);
module.exports = {
// 基本路径
publicPath: './',
// 输出文件目录
outputDir: 'systemVue',
// eslint-loader 是否在保存的时候检查
lintOnSave: true,
// webpack配置别名
chainWebpack: (config) => {
config.resolve.alias
.set('@', resolve('src'))
},
devServer: {
// 本地ip地址
host: 'localhost',
port: 80,
open: true,
/* 使用代理 */
proxy: {
'/api': {
/* 目标代理服务器地址 */
target: 'http://192.168.1.126:8080/',
/* 允许跨域 */
changeOrigin: true,
ws: true,
pathRewrite: {
'^/api': ''
}
}
}
},
};
webpack配置教程链接: https://blog.csdn.net/qq_43305958/article/details/108247217.
3.创建登录界面login页面
login.vue
<template>
<div id="login">
<div class="login-wrap">
<div class="login-html">
<input id="tab-1" type="radio" name="tab" class="sign-in" checked />
<label for="tab-1" class="tab">Sign In</label>
<input id="tab-2" type="radio" name="tab" class="sign-up" />
<label for="tab-2" class="tab">Sign Up</label>
<div class="login-form">
<div class="sign-in-htm">
<div class="group">
<label for="user" class="label">Username</label>
<input id="user" type="text" class="input" />
</div>
<div class="group">
<label for="pass" class="label">Password</label>
<input id="pass" type="password" class="input" data-type="password" />
</div>
<div class="group">
<input id="check" type="checkbox" class="check" checked />
<label for="check">
<span class="icon"></span> Keep me Signed in
</label>
</div>
<div class="group">
<input type="submit" class="button" value="Sign In" />
</div>
<div class="hr"></div>
<div class="foot-lnk">
<a href="#forgot">Forgot Password?</a>
</div>
</div>
<div class="sign-up-htm">
<div class="group">
<label for="user" class="label">Username</label>
<input id="user" type="text" class="input" />
</div>
<div class="group">
<label for="pass" class="label">Password</label>
<input id="pass" type="password" class="input" data-type="password" />
</div>
<div class="group">
<label for="pass" class="label">Repeat Password</label>
<input id="pass" type="password" class="input" data-type="password" />
</div>
<div class="group">
<label for="pass" class="label">Email Address</label>
<input id="pass" type="text" class="input" />
</div>
<div class="group">
<input type="submit" class="button" value="Sign Up" />
</div>
<div class="hr"></div>
<div class="foot-lnk">
<label for="tab-1">Already Member?</label>
</div>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
name: "login",
data() {
return {};
},
methods: {
login() {},
},
};
</script>
<style lang="scss" scoped>
$prim: #53e3a6;
#login {
height: 100%;
display: flex;
justify-content: center;
align-items: center;
margin: 0;
color: #6a6f8c;
font: 600 16px/18px "Open Sans", sans-serif;
.clearfix:after,
.clearfix:before {
content: "";
display: table;
}
.clearfix:after {
clear: both;
display: block;
}
a {
color: inherit;
text-decoration: none;
}
.login-wrap {
width: 100%;
margin: auto;
max-width: 525px;
min-height: 670px;
position: relative;
// background: url(https://raw.githubusercontent.com/khadkamhn/day-01-login-form/master/img/bg.jpg)
// no-repeat center;
box-shadow: 0 12px 15px 0 rgba(0, 0, 0, 0.24),
0 17px 50px 0 rgba(0, 0, 0, 0.19);
}
.login-html {
width: 100%;
height: 100%;
position: absolute;
padding: 90px 70px 50px 70px;
background: rgba(40, 57, 101, 0.9);
}
.login-html .sign-in-htm,
.login-html .sign-up-htm {
top: 0;
left: 0;
right: 0;
bottom: 0;
position: absolute;
transform: rotateY(180deg);
backface-visibility: hidden;
transition: all 0.4s linear;
}
.login-html .sign-in,
.login-html .sign-up,
.login-form .group .check {
display: none;
}
.login-html .tab,
.login-form .group .label,
.login-form .group .button {
cursor: pointer;
text-transform: uppercase;
}
.login-html .tab {
font-size: 22px;
margin-right: 15px;
padding-bottom: 5px;
margin: 0 15px 10px 0;
display: inline-block;
border-bottom: 2px solid transparent;
}
.login-html .sign-in:checked + .tab,
.login-html .sign-up:checked + .tab {
color: #fff;
border-color: #1161ee;
}
.login-form {
min-height: 345px;
position: relative;
perspective: 1000px;
transform-style: preserve-3d;
}
.login-form .group {
margin-bottom: 15px;
}
.login-form .group .label,
.login-form .group .input,
.login-form .group .button {
width: 100%;
color: #fff;
display: block;
}
.login-form .group .input,
.login-form .group .button {
border: none;
padding: 15px 20px;
border-radius: 25px;
background: rgba(255, 255, 255, 0.1);
}
.login-form .group input[data-type="password"] {
text-security: circle;
-webkit-text-security: circle;
}
.login-form .group .label {
color: #aaa;
font-size: 12px;
}
.login-form .group .button {
background: #1161ee;
}
.login-form .group label .icon {
width: 15px;
height: 15px;
border-radius: 2px;
position: relative;
display: inline-block;
background: rgba(255, 255, 255, 0.1);
}
.login-form .group label .icon:before,
.login-form .group label .icon:after {
content: "";
width: 10px;
height: 2px;
background: #fff;
position: absolute;
transition: all 0.2s ease-in-out 0s;
}
.login-form .group label .icon:before {
left: 3px;
width: 5px;
bottom: 6px;
transform: scale(0) rotate(0);
}
.login-form .group label .icon:after {
top: 6px;
right: 0;
transform: scale(0) rotate(0);
}
.login-form .group .check:checked + label {
color: #fff;
}
.login-form .group .check:checked + label .icon {
background: #1161ee;
}
.login-form .group .check:checked + label .icon:before {
transform: scale(1) rotate(45deg);
}
.login-form .group .check:checked + label .icon:after {
transform: scale(1) rotate(-45deg);
}
.login-html
.sign-in:checked
+ .tab
+ .sign-up
+ .tab
+ .login-form
.sign-in-htm {
transform: rotate(0);
}
.login-html .sign-up:checked + .tab + .login-form .sign-up-htm {
transform: rotate(0);
}
.hr {
height: 2px;
margin: 60px 0 50px 0;
background: rgba(255, 255, 255, 0.2);
}
.foot-lnk {
text-align: center;
}
}
</style>
4.nav导航栏
链接: https://blog.csdn.net/qq_43305958/article/details/108266091.
5.home主页
链接: https://blog.csdn.net/qq_43305958/article/details/108266154.
二、后端
三、微信小程序
1.创建微信小程序
选择一个空文件夹,创建项目的名称
2.分包
先分包,为了项目未来的规划,将项目分割
在app.json文件中
"subpackages": [{
"root": "packageA",
"name": "pack1",
"pages": [
"pages/cat/cat",
"pages/dog/dog"
]
}, {
"root": "packageB",
"name": "pack2",
"pages": [
"pages/apple/apple",
"pages/banana/banana"
]
}],
3.配置window的属性
"window": {
"backgroundTextStyle": "dark",
"backgroundColor": "#e74c3c",
"navigationBarBackgroundColor": "#fff",
"navigationBarTitleText": "公司管理系统",
"navigationBarTextStyle": "black",
"enablePullDownRefresh": true,
"navigationStyle": "custom"
},
配置属性表
4.封装组件
1.classBtn
wxml
<view class="frame" style="background: {{background === '' ? '' : background}}">
<text wx:for="{{text}}" space="ensp">
<text wx:if="{{index === text.length}}">{{item}}</text>
<text wx:if="{{index !== text.length}}">{{item}} </text>
</text>
</view>
wxss
.frame {
margin: 0 auto;
text-align: center;
line-height: 30px;
letter-spacing: 6px;
height: 30px;
width: 80%;
position: relative;
color: #2980b9;
font-weight: bold;
border: 1px solid #1abc9c;
border-radius: 7px;
}
j
properties: {
text: String, // 组件显示文字
background: String, //组件背景颜色
},
四、数据库
暂无
五、时间轴
0828 项目跟大厂合作,优化项目去了
github链接: https://github.com/NotBerlin/companyManagement.
总结
good night更多推荐
已为社区贡献10条内容
所有评论(0)