当前位置: 首页 > news >正文

基于Uni-app的体育场馆预约系统的设计与实现

个人介绍

hello hello~ ,这里是 code袁~💖💖 ,欢迎大家点赞🥳🥳关注💥💥收藏🌹🌹🌹
在这里插入图片描述
🦁作者简介:一名喜欢分享和记录学习的在校大学生
💥个人主页:code袁
💥 个人QQ:2647996100
🐯 个人wechat:code8896

专栏导航

code袁系列专栏导航
1.毕业设计与课程设计:本专栏分享一些毕业设计的源码以及项目成果。🥰🥰🥰
2.微信小程序开发:本专栏从基础到入门的一系开发流程,并且分享了自己在开发中遇到的一系列问题。🤹🤹🤹
3.vue开发系列全程线路:本专栏分享自己的vue的学习历程。

非常期待和您一起在这个小小的互联网世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨ 

在这里插入图片描述

文章目录

        • 个人介绍
        • 专栏导航
        • 1、前言介绍
        • 2、开发技术简介
        • 3、系统功能图
        • 3、功能实现
        • 4、库表设计
        • 5、关键代码
        • 6、源码获取
        • 7、 🎉写在最后

演示视频

小程序毕业设计-体育场馆预约系统

1、前言介绍

伴随着信息技术与互联网技术的不断发展,校园也进到了一个新的信息化时代,传统管理技术性没法高效率、容易地管理体育场预约信息内容。为了实现时代的发展必须,提升体育场预约高效率,各种各样体育场预约体系应时而生,体育场预约管理系统的实现是信息内容时代浪潮时代的产物之一。一切系统都要遵循系统设计的基本流程。它还需要通过市场调查、需求分析报告、汇总设计、详尽设计以及测试,根据Node语言表达设计,完成体育场预约管理系统。该系统根据B/S,即所谓的电脑浏览器/网络服务器方式,运用Node技术,前端采用uniapp微信小程序等技术实现,选用MySQL作为后台系统。
本体育场预约管理系统采用前后端分离的方式来实现,前端Vue、Element组件编写前端代码为主、其特点可以实时渲染加载数据,不用像以前传统的页面,写完要重新启动项目才能加载数据。系统还采用的File文件组件上传和预览图片等,以及前端利用了第三方富文本编辑器框架技术实现了医生详情介绍和系统公告等模块。这样比传统文本框只能填写文字又来更好更直观的页面呈现方式。不仅可以上传文字,还可以直接复制网页图片文字等。实现动态渲染页面样式和内容等。

2、开发技术简介

本节介绍场馆预约平台用到的一些技术和开发环境的简介,用到开发技术主要包括:
(1)前端用到Element UI组件库和Vue框架
(2)后端用到Node
(3)包管理器Npm
(4)中间件Express
(5)数据库MySQL
系统开发环境主要是:前端开发工具Vscode,Hbuilder、操作系统Win10、CPU i5-9300H、内存8G。

在这里插入图片描述

3、系统功能图

Uniapp场馆预约系统主要由客户端(微信小程序和安卓手机App)和Web管理端(基于Web服务器Apache Tomcat,MySQL数据库)这两个子系统组成。这两个子系统之间通过Htpp的request请求和response响应以json形式的数据交互,共同实现了场馆预约平台的功能。
客户服务端主要包括三大主要的功能模块:登录、预约和扫码签到模块。Web管理端主要包括三大主要的功能模块:用户、动态和预约模块。这六大模块还有相应的子模块,通过对子模块的实现来实现整个客户端的功能。如图4-3所示。

在这里插入图片描述

3、功能实现

系统登录功能是程序必不可少的功能,在登录页面必填的数据有两项,一项就是账号,另一项数据就是密码,当管理员正确填写并提交这二者数据之后,管理员就可以进入系统后台功能操作区。下图就是管理员登录页面。
在这里插入图片描述
项目管理页面提供的功能操作有:查看体育场馆,删除体育场馆操作,新增体育场馆操作,修改体育场馆操作。下图就是体育场馆管理页面。
在这里插入图片描述
公告信息管理页面提供的功能操作有:新增公告,修改公告,删除公告操作。下图就是公告信息管理页面。

在这里插入图片描述
项目管理页面提供的功能操作有:查看体育场馆,删除体育场馆操作,新增体育场馆操作,修改体育场馆操作。下图就是体育场馆管理页面。
在这里插入图片描述
如下是小程序端
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

4、库表设计

程序设计是离不开对应数据库的设计操作的,这样的做法就是减少数据对程序的依赖性,所以数据库的设计也是需要花费大量的日常时间来进行设计的,在设计中对程序开发需要存储的数据信息进行实体划分,先确认实体,然后设计实体的属性等操作,这种设计就是数据库设计里面不能少的必须有的E-R模型设计。为了降低程序设计的对应的数据库设计难度,开发人员也可以使用相应的工具来进行E-R模型设计,现在市面上设计E-R模型的工具有PowerDesigner建模工具,Navicat制作工具,还有微软的Visio绘图工具。为了简便起见,本程序在设计E-R模型的时候,就选用了微软的Visio这款功能强大,操作便利的绘图工具。

1.预约实体及其附属图
在这里插入图片描述
2.用户实体及其附属图
在这里插入图片描述
3.下图是公告实体和其具备的属性
在这里插入图片描述

5、关键代码
<template><div><el-dialog title="添加新闻" :visible.sync="dialogVisible" width="40%"><!-- 上传组件 --><el-form ref="form" :rules="rules" :model="form" label-width="80px"><el-form-item label="标题" prop="title"><el-input v-model="form.title"></el-input></el-form-item><el-form-item label="上传图片"><commonUpload></commonUpload></el-form-item><el-form-item label="预约须知" prop="desc"><quill-editorref="myQuillEditor"v-model="form.desc"class="editor"/></el-form-item></el-form><span slot="footer" class="dialog-footer" style="margin-right: 25%"><el-button @click="dialogVisible = false">取 消</el-button><el-button type="primary" @click="addDymic">确 定</el-button></span></el-dialog><div class="manage-hander"><!-- 添加按钮 --><!-- <el-button type="primary" @click="handleAdd">+ 新增</el-button> --></div><!-- 表格 --><el-table:data="tableData"style="width: 100%"stripeheight="650px"v-loading="loading"><el-table-column label="标题" prop="username"> </el-table-column><el-table-column label="图片" prop="userImg"><template slot-scope="scope"><el-imagestyle="width: 150px; height: 100px":src="scope.row.imgUrls[0]":preview-src-list="[scope.row.imgUrls[0]]"></el-image></template></el-table-column><el-table-column label="内容" prop="desc" width="500rpx"><template slot-scope="scope"><el-popoverplacement="top-start"title="全部内容"width="500"trigger="hover":content="scope.row.desc"><div slot="reference" class="text">{{ scope.row.desc }}</div></el-popover></template></el-table-column><el-table-column prop="allow" label="审核"><template slot-scope="scope"><el-switchv-model="scope.row.allow"active-color="#13ce66"inactive-color="#ff4949"active-value="1"inactive-value="0"@click.native="handle(scope.row)"></el-switch></template></el-table-column><el-table-column label="上传时间" prop="uploadTime"> </el-table-column><el-table-column align="right" label="操作"><template slot-scope="scope"><el-button size="mini" type="danger" @click="handleDelete(scope.row)">删除</el-button></template></el-table-column></el-table><el-paginationclass="page"@size-change="handleSizeChange"@current-change="handleCurrentChange":current-page="currentPage":page-sizes="pageSizes":page-size="pageSize"layout="total, sizes, prev, pager, next":total="totalCount"></el-pagination></div>
</template><script>
const moment = require("moment");
import {getDynamic,addDynamic,deleteDynamic,updataIdDynamic,
} from "../api/dynamic";
import commonUpload from "@/components/commonUpload.vue";
export default {data() {return {form: {username: "",userImg: "",desc: "",uploadTime: "",allow: "",},rules: {name: [{ required: true, message: "请输入标题", trigger: "blur" }],desc: [{required: true,message: "请输入内容",trigger: "blur",},],},tableData: [],// 默认显示第几页currentPage: 1,// 总条数,根据接口获取数据长度(注意:这里不能为空)totalCount: "",// 个数选择器(可修改)pageSizes: [4, 6, 8],// 默认每页显示的条数(可修改)PageSize: 1,dialogVisible: false,loading: true,};},components: {commonUpload,},methods: {handleAdd() {this.dialogVisible = true;},addDymic() {this.form.imgUrl = this.$store.state.upload.imgUrl;this.form.createTime = moment().format("YYYY-MM-DD");this.$refs.form.validate((valid) => {if (valid) {this.dialogVisible = false;addDynamic(this.form).then((res) => {console.log("333", res);});this.$message({type: "success",message: "添加成功",});this.getList();}});},handle(e) {console.log();// let id = res.id;this.$confirm("审核通过吗?", "提示", {confirmButtonText: "确定",cancelButtonText: "取消",type: "warning",}).then((res) => {console.log("44");updataIdDynamic(e).then((res1) => {console.log(res1.data.data);this.$message.success(res1.data.data.msg);});});},//分页handleCurrentChange(val) {let currentPage = {currentPage: val,};getDynamic(currentPage).then((res) => {setTimeout(() => {this.loading = false;this.tableData = res.data.results;}, 200);});},//分页每页显示多少handleSizeChange(val) {let pageSize = {pageSize: val,};getDynamic(pageSize).then((res) => {setTimeout(() => {this.loading = false;this.tableData = res.data.results;}, 200);});},// 获取数据getList() {getDynamic().then((res) => {let a = res.data.results;a.forEach((obj) => {const imgString = obj.imgUrl;const trimmedString = imgString.replace('["', "").replace('"]', "");const imgArray = trimmedString.split('"\,"');obj.imgUrls = imgArray;});console.log(a);this.tableData = a;this.totalCount = res.data.total;setTimeout(() => {this.loading = false;}, 500);});},// 删除数据handleDelete(res) {let id = {id: res.id,};this.$confirm("此操作将永久删除该文件, 是否继续?", "提示", {confirmButtonText: "确定",cancelButtonText: "取消",type: "warning",}).then(() => {// 调用删除接deleteDynamic(id).then(() => {this.$message({type: "success",message: "删除成功!",});});this.getList();}).catch(() => {this.$message({type: "info",message: "已取消删除",});});},},mounted() {this.getList();},
};
</script><style lang="less">
.manage-hander {margin-bottom: 10px;
}
.upload {margin-left: 15%;
}
.page {position: absolute;bottom: 50px;right: 20px;
}
.text {overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 3;-webkit-box-orient: vertical;
}
</style>
<template><view class="content"><view v-for="item in newList" :key="item.id"><view class="title">{{ item.name }}</view><view class="time">{{item.uploadTime}}</view><rich-text :nodes="item.desc" class="text"></rich-text><view class="img" @click="previewImg(item.imgUrl)"><img :src="item.imgUrl" alt="" /></view></view></view>
</template><script>
export default {data() {return {newList: [],};},onLoad(res) {uni.showLoading({title: '加载中',mask:true});uni.request({url: '/api/index/searchNews?id=' + res.id,method: 'POST',success: res => {console.log(res.data);this.newList = res.data;uni.setNavigationBarTitle({title:this.newList[0].name})setTimeout(function () {uni.hideLoading();}, 200);},fail: () => {},complete: () => {}});},methods: {previewImg(urlimg) {let _this = this;let imgsArray = [];imgsArray[0] = urlimg;uni.previewImage({current: 0,urls: imgsArray});},}
};
</script><style lang="less">
page {background-color: #efefef;
}
.content {margin-top: 20rpx;border-radius: 20rpx;margin-left: 2%;width: 90%;background-color: white;padding: 10rpx 20rpx;.title {padding: 10rpx 0;font-size: 35rpx;font-weight: 700;}.time {padding: 10rpx 0;font-size: 20rpx;color: gray;}.item {font-size: 30rpx;color: gray;text-indent: 2em;text-align: justify;line-height: 50rpx;}.img img {width: 100%;border-radius: 20rpx;}.text{text-indent: 2em;letter-spacing: 2rpx;line-height: 55rpx;color: #666;}
}
</style>
6、源码获取

大家点赞、收藏、关注、评论啦 、查看👇🏻获取联系方式👇🏻

7、 🎉写在最后

🍻伙伴们,如果你已经看到了这里,觉得这篇文章有帮助到你的话不妨点赞👍或 Star ✨支持一下哦!手动码字,如有错误,欢迎在评论区指正💬~

你的支持就是我更新的最大动力💪~
在这里插入图片描述

相关文章:

基于Uni-app的体育场馆预约系统的设计与实现

个人介绍 hello hello~ &#xff0c;这里是 code袁~&#x1f496;&#x1f496; &#xff0c;欢迎大家点赞&#x1f973;&#x1f973;关注&#x1f4a5;&#x1f4a5;收藏&#x1f339;&#x1f339;&#x1f339; &#x1f981;作者简介&#xff1a;一名喜欢分享和记录学习的…...

1.Spring Boot框架整合

Spring Boot项目创建&#xff08;约定大于配置&#xff09; 2.1.3.RELEASE版本示例 idea创建 从官网下载&#xff08;https://start.spring.io/&#xff09;单元测试默认依赖不对时&#xff0c;直接删除即可 Web支持&#xff08;SpringMVC&#xff09; <dependency>&…...

如何在 Debian VPS 上添加、删除和授予用户 sudo 权限

简介 当你启动一个新的服务器时&#xff0c;会创建一个名为 root 的默认账户。这个用户拥有完全的系统访问权限&#xff0c;应该仅用于管理任务。作为 root 用户&#xff0c;你基本上可以对系统做任何操作&#xff0c;这很强大&#xff0c;但也极其危险。Linux 没有“撤销”按…...

openlayers 入门教程(九):overlay 篇

还是大剑师兰特&#xff1a;曾是美国某知名大学计算机专业研究生&#xff0c;现为航空航海领域高级前端工程师&#xff1b;CSDN知名博主&#xff0c;GIS领域优质创作者&#xff0c;深耕openlayers、leaflet、mapbox、cesium&#xff0c;canvas&#xff0c;webgl&#xff0c;ech…...

基于Python的高考志愿辅助填报系统

基于Python的高考志愿辅助填报系统是一个利用数据分析和机器学习技术帮助高考生进行志愿填报决策的工具。该系统可以根据考生的分数、兴趣、专业偏好、历史录取数据等因素&#xff0c;为考生提供科学合理的志愿填报建议。以下是设计这样一个系统的步骤和要点。 ### 1. 数据收集…...

使用CMake搭建简单的Qt程序

目录结构 代码 CMakeLists.txt&#xff1a; cmake_minimum_required(VERSION 3.15)set(CMAKE_AUTOUIC ON) set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON)# set the project name project(xxx)# 设置Qt的路径 # 例如 E:/Qt/Qt/aaa/msvc2019_64 # aaa 为Qt的版本号 set(QT_PATH…...

Qt + VS2017 创建一个简单的图片加载应用程序

简介&#xff1a; 本文介绍了如何使用Qt创建一个简单的图片加载应用程序。该应用程序可以打开图片文件并在界面上显示选定的图片&#xff0c;并保存用户上次选择的图片路径。 1. 创建项目&#xff1a; 首先&#xff0c;在VS中创建一个新的Qt Widgets应用程序项目&#xff0c;并…...

Linux文件搜索工具(gnome-search-tool)

opensuse下安装: sudo zypper install gnome-search-tool 操作界面:...

c++20协程详解(三)

前言 前面两节我们已经能够实现一个可用的协程框架了。但我们一定还想更深入的了解协程&#xff0c;于是我们就想尝试下能不能co_await一个协程。下面会涉及到部分模板编程的知识&#xff0c;主要包括&#xff08;模板偏特化&#xff0c;模板参数列表传值&#xff0c;模板函数…...

LLM--提示词Propmt的概念、作用及如何设计提示词

文章目录 1. 什么是提示词&#xff1f;2. 提示词的作用3. 如何设计提示词&#xff1f;3.1. 提供详细的信息3.2. 指定角色3.3. 使用分隔符和特殊符号3.4. 提供示例3.5. 少量示例的思维链&#xff08;COT&#xff09;模型3.6. 思维树&#xff08;TOT&#xff09;模型3.7. 自洽性 …...

59 使用 uqrcodejs 生成二维码

前言 这是一个最近的一个来自于朋友的需求, 然后做了一个 基于 uqrcodejs 来生成 二维码的一个 demo package.json 中增加以依赖 "uqrcodejs": "^4.0.7", 测试用例 <template><div class"hello"><canvas id"qrcode&qu…...

Leetcode 3097. Shortest Subarray With OR at Least K II

Leetcode 3097. Shortest Subarray With OR at Least K II 1. 解题思路2. 代码实现 题目链接&#xff1a;3097. Shortest Subarray With OR at Least K II 1. 解题思路 这一题是题目3095的一个进阶版本&#xff0c;但也就是增加了序列的复杂度而已&#xff0c;要求我们能够在…...

算法系列--递归,回溯,剪枝的综合应用(2)

&#x1f495;"对相爱的人来说&#xff0c;对方的心意&#xff0c;才是最好的房子。"&#x1f495; 作者&#xff1a;Lvzi 文章主要内容&#xff1a;算法系列–递归,回溯,剪枝的综合应用(2) 大家好,今天为大家带来的是算法系列--递归,回溯,剪枝的综合应用(2) 一.括号…...

Docker搭建LNMP环境实战(09):安装mariadb

1、编写mariadb部署配置文件 在文件夹&#xff1a;/mnt/hgfs/dockers/test_site/compose下创建文件&#xff1a;test_site_mariadb.yml&#xff0c;内容如下&#xff1a; version: "3.5" services:test_site_mariadb:container_name: test_site_mariadbimage: mari…...

基于Python的微博舆论分析,微博评论情感分析可视化系统,附源码

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…...

Flutter iOS上架指南

本文探讨了使用Flutter开发的iOS应用能否上架&#xff0c;以及上架的具体流程。苹果提供了App Store作为正式上架渠道&#xff0c;同时也有TestFlight供开发者进行内测。合规并通过审核后&#xff0c;Flutter应用可以顺利上架。但上架过程可能存在一些挑战&#xff0c;因此可能…...

实操:driver.js 实现产品导览、亮点、上下文帮助

官网 https://driverjs.com/ 依赖 <script src"https://cdn.jsdelivr.net/npm/driver.js1.0.1/dist/driver.js.iife.js"></script> <link rel"stylesheet" href"https://cdn.jsdelivr.net/npm/driver.js1.0.1/dist/driver.css"/…...

【JavaWeb】Day29.SpringBootWeb请求响应——请求(二)

请求响应 4.数组集合参数 数组集合参数的使用场景&#xff1a;在HTML的表单中&#xff0c;有一个表单项是支持多选的(复选框)&#xff0c;可以提交选择的多个值。 4.1 数组 数组参数&#xff1a;请求参数名与形参数组名称相同且请求参数为多个&#xff0c;定义数组类型形参即…...

asf是什么格式的文件?用手机怎么打开?

由于手机操作系统和硬件的限制&#xff0c;大部分手机并不直接支持asf文件的播放。因此&#xff0c;如果你想在手机上打开asf文件&#xff0c;你可能需要先将文件转换为手机支持的格式&#xff0c;如MP4。可以通过使用一些视频转换软件来实现&#xff0c;比如野葱视频转换器。 …...

picGo图床搭建gitee和smms(建议使用)

picGoGitee 这个需要下载gitee插件, 因为官方频繁的检索文件类型, 有时候也会失效 如果没有特殊要求平时存个学习的要看图中文字的重要的图片建议就是smms, 免费也够用! 图片存本地不方便, 各种APP中来回传还会失帧损失画质, 所以你值得往下看 picGosmms 建议使用这个, sm…...

LeetCode | 数组 | 二分查找 | 35.搜索插入位置【C++】

题目链接 题目描述 给定一个排序数组和一个目标值&#xff0c;在数组中找到目标值&#xff0c;并返回其索引。如果目标值不存在于数组中&#xff0c;返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 示例 1: 输入: nums [1,3,5,6], target 5 输出…...

Linux 给网卡配置ip

ip addr | grep eth9 ifconfig eth9 10.0.0.2 netmask 255.255.255.0 up...

【C语言】翻译环境与运行环境

一、前言 在我们学习C语言的时候&#xff0c;第一个接触的程序就是&#xff1a;在屏幕上打印” hello word! “&#xff0c;可当时的我们却未去深入的理解与感悟&#xff0c;一个程序代码是如何运行的&#xff1b;而这一期的博客&#xff0c;则是带着我们&#xff0c;通过C代码…...

ubuntu20.04执行sudo apt-get update失败的解决方法

参考&#xff1a;执行sudo apt-get update失败的解决方案 1、换源型错误 &#xff08;1&#xff09;编辑/etc/apt/sources.list文件 在命令行中输入&#xff1a; sudo vim /etc/apt/sources.list 或者 sudo gedit /etc/apt/sources.list 推荐使用后者 &#xff08;2&#xf…...

接口调用成功后端却一直返回404

vuespringboot 我在vue.config.js中配置了向后端的反向代理 然后使用了axios向后端发送post请求 可以看到可以接收到前端传来的值 但是前端控制台却报了 “xhr.js:245POST http://localhost:7777/api/login 404 (Not Found)” 最后询问我那智慧的堂哥... ... 解决办法是把C…...

【Vmware】 debian 12 安装教程

1.前提说明 VMware 17.5.1 (自行安装)&#xff0c;参考Debian 12maven 3.8.7git 2.39.2jdk 1.8 / 11 / 17 1.1.Debian 下载 访问(https://www.debian.org/download) 下载 Debian 这是 Debian 12&#xff0c;代号为 bookworm&#xff0c;网络安装&#xff0c;用于 64 位 PC&a…...

YooAssets 使用相关

## 使用 YooAssets 动态加载原生文件时候 > 原生文件&#xff1a;txt&#xff1b;json&#xff1b;等需要直接保存文件内string字符的文件 需要将打包方式设置成为&#xff0c;PackRawFile 并且加载时候使用 API &#xff1a; YooAssets.LoadRawFileSync()YooAssets.LoadRa…...

精准扶贫管理系统|基于Springboot的精准扶贫管理系统设计与实现(源码+数据库+文档)

精准扶贫管理系统目录 目录 基于Springboot的精准扶贫管理系统设计与实现 一、前言 二、系统功能设计 三、系统实现 1、管理员模块的实现 &#xff08;1&#xff09;用户信息管理 &#xff08;2&#xff09;贫困户信息管理 &#xff08;3&#xff09;新闻类型管理 &a…...

Flutter与iOS和Android原生页面交互

一、Flutter 与原生页面交互的重要性和应用场景 Flutter 是一个由 Google 开发的开源框架&#xff0c;用于创建跨平台的移动、Web 和桌面应用程序。Flutter 允许开发者使用一套代码库为 Android 和 iOS 等平台构建美观、高性能的应用程序。然而&#xff0c;尽管 Flutter 提供了…...

Chrome安装Vue插件vue-devtools

直接通过网站&#xff1a; Home | Vue Devtools (vuejs.org) chrome扩展商城中搜索&#xff1a;Vue.js devtools 参考下面edge扩展商城的图&#xff0c;两者流程相近...

做胃镜需那好天津津门网站A/国际新闻今天最新消息

上图是每个栈帧的内部结构&#xff0c;一个栈能放多少栈帧&#xff0c;取决于栈帧的大小&#xff0c;栈帧的大小取决于局部变量表 这篇主要讲解 局部变量表&#xff1a; 一&#xff0c;概念&#xff1a; &#xff08;1&#xff09;局部变量表也被称之为局部变量表数组或本地…...

西部数码网站管理助手/上海专业网络推广公司

1.执行whereis mysql会有如下打印&#xff1a;mysql: /usr/bin/mysql /usr/lib64/mysql /usr/include/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz2.cd /usr/share/mysql目录下查看存在mysql.server文件3.复制mysql.server文件 到 /etc/init.d/下&#xff0c;命名为…...

做精美ppt的网站/网页搜索

为了更好地让初学者轻松入门&#xff0c;这里仍然采用趣味性的方式聊一些常用技术点&#xff0c;致力于.NET新手们的快速提高&#xff01;知识都是普通的&#xff0c;关键是学习的思路。技术源于生活&#xff0c;技术原来可以这样学。抛砖引玉而已。 层次结构在现实社会里随处…...

网站怎么生成三级域名/2021近期时事新闻热点事件

生肖年份的起点●储流杰中国传统文化中运用天干(甲、乙、丙、丁、戊、己、庚、辛、壬、癸)和地支(子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥&#xff0c;)依次交替组合循环的方法纪年&#xff0c;俗称干支纪年法。组合时必须单数配单数&#xff0c;双数配双数&#xff0…...

那些做环保网站的好/网站建设网络推广平台

我们会骂 12306 的网站界面挫&#xff0c;效果差&#xff0c;速度慢&#xff0c;回头看看自己写的代码&#xff0c;是不是也一样的狗血&#xff01;在前端&#xff0c;很多看似简单的东西&#xff0c;内藏无数玄机。本文将以一个小小的登录框为入口&#xff0c;谈一谈如何完善自…...

办公室装修风格图/竞价关键词优化软件

找到webpack.config.prod.js 在loaders增加 {test: /\.less$/,loader: ExtractTextPlugin.extract(style, css!less) },...