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

廊坊哪里做网站好如何写好软文

廊坊哪里做网站好,如何写好软文,东莞免费做网站公司,优秀网站的特点基础项目构建 创建VUE初始工程 确保自己下载了node.js和npm node -v //查看node.js的版本 npm -v //查看npm的版本 npm i vue/cli -g //安装VUE CLI 创建 以管理员身份运行 输入#xff1a;vue ui 就会进入 点击创建 自定义项目名字#xff0c;选择npm管理 结…基础项目构建 创建VUE初始工程 确保自己下载了node.js和npm node -v //查看node.js的版本 npm -v //查看npm的版本 npm i vue/cli -g //安装VUE CLI 创建 以管理员身份运行 输入vue ui 就会进入 点击创建 自定义项目名字选择npm管理 结构 用vscode打开这个项目 运行 打开终端 快捷键ctrlj 输入npm run serve回车 然后进入给的网址 修改端口 vue.config.js const { defineConfig } require(vue/cli-service) module.exports defineConfig({transpileDependencies: true,devServer: {port: 8181} })现在我们就是在这个界面开始编写我们的代码 2024.7.4 学生登录界面 参考这篇文章 Vue 实现登录注册功能前后端分离完整案例 | 软件研会 参考文章中遇到的一些问题 问题解决error: Component name “xxx” should always be multi-word. 解决 解决error: Component name “xxx” should always be multi-word._error component name about should always be mult-CSDN博客 问题import VueAxios from vue-axios中vue-axios找不到报错 解决 npm i vue-axios 问题点击登录之后一直网页报错 解决措施麻了我各种翻阅资料居然是这里出错了气死了花费了我2小时 src\views\login\Login.vue 问题基本搞定还有一些小细节 我们不需要注册这个版本所以我没有搞。 基本就ok了 所有的代码 src\App.vue templatediv idapprouter-view//div /templatescriptexport default {name: App,components: {} } /scriptstyle #app {font-family: Avenir, Helvetica, Arial, sans-serif;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;text-align: center;color: #2c3e50; } /stylesrc\main.js import Vue from vue import App from ./App.vue import store from ./storeimport router from ./router //路由 2 import VueRouter from vue-router // 路由 1import ElementUI from element-ui; // Element 1 import element-ui/lib/theme-chalk/index.css; // Element 2import axios from axios import VueAxios from vue-axios// 关闭 Vue 的生产提示 Vue.config.productionTip false// 使用插件 Vue.use(ElementUI); // Element 3 Vue.use(VueRouter) // 路由 3 Vue.use(VueAxios, axios) // 使用 axios 插件// 创建 Vue 实例对象 new Vue({router,store,render: h h(App) }).$mount(#app)vue.config.js const { defineConfig } require(vue/cli-service) module.exports defineConfig({transpileDependencies: true,lintOnSave: false,devServer: {port: 8181,// 代理服务器可以将路由中的指定前缀转发到指定的后端服务器中proxy: {/api: {target: http://localhost:8080,ws: true, // 是否启用websocketschangeOrigin: true, // 代理时是否更改hostpathRewrite: {^/api: //这里理解成用/api代替target里面的地址}}}} })src\views\login\Login.vue templatedivel-card classbox-cardh2登录/h2el-form:modelruleFormstatus-icon:rulesrulesrefruleFormlabel-positionleftlabel-width70pxclasslogin-fromel-form-item label用户名 propusernameel-input v-modelruleForm.username/el-input/el-form-itemel-form-item label密码 proppasswordel-inputtypepasswordv-modelruleForm.passwordautocompleteoff/el-input/el-form-item/el-formdiv classbtnGroupel-buttontypeprimaryclicksubmitForm(ruleForm)v-loadingloading登录/el-buttonel-button clickresetForm(ruleForm)重置/el-buttonrouter-link to/registerel-button stylemargin-left: 10px注册/el-button/router-link/div/el-card/div /templatescriptexport default {data() {return {ruleForm: {username: ,password: ,},rules: {username: [{ required: true, message: 用户名不能为空, trigger: blur },],password: [{ required: true, message: 密码不能为空, trigger: blur },],},loading: false, // 是否显示加载动画};},methods: {submitForm(formName) {// 验证表单中的账号密码是否有效因为在上面rules中定义为了必填 required: truethis.$refs[formName].validate((valid) {// 点击登录后让登录按钮开始转圈圈展示加载动画this.loading true;// 如果经过校验账号密码都不为空则发送请求到后端登录接口if (valid) {let _this this;// 使用 axios 将登录信息发送到后端this.axios({url: /api/admin/student/login, // 请求地址method: post, // 请求方法headers: { // 请求头Content-Type: application/json,},data: { // 请求参数username: _this.ruleForm.username,password: _this.ruleForm.password,},}).then((res) { // 当收到后端的响应时执行该括号内的代码res 为响应信息也就是后端返回的信息if (res.data.code 1) { // 当响应的编码为 1 时说明登录成功// 将用户信息存储到sessionStorage中sessionStorage.setItem(userInfo, JSON.stringify(res.data.data));// 跳转页面到首页this.$router.push(/home);// 显示后端响应的成功信息this.$message({message: res.data.data,type: success,});} else { // 当响应的编码不为 1 时说明登录失败// 显示后端响应的失败信息this.$message({message: res.data.msg,type: warning,});}// 不管响应成功还是失败收到后端响应的消息后就不再让登录按钮显示加载动画了_this.loading false;console.log(res);});} else { // 如果账号或密码有一个没填就直接提示必填不向后端请求console.log(error submit!!);this.loading false;return false;}});},resetForm(formName) {this.$refs[formName].resetFields();},}, }; /scriptstyle scoped /* 设置登录面板居中宽度为400px */ .box-card {margin: auto auto;width: 400px; } /* 设置登录面板中的表单居中 */ .login-from {margin: auto auto; } /style src\views\home\Home.vue templatedivh2欢迎{{ user.username }}您的 uid 为{{ user.id }}/h2el-button clicklogout 登出 /el-button/div /templatescript export default {data() {return {user: {username: ,id: null,},};},methods: {logout(){// 移除本地用户登录信息sessionStorage.removeItem(userInfo);// 跳转页面到登录页this.$router.push(/login);}},mounted() {if (sessionStorage.getItem(userInfo)) {// 将用户信息存储到sessionStorage中this.user JSON.parse(sessionStorage.getItem(userInfo));}}, }; /scriptstyle scoped /style src\router\index.js // 此文件专门负责项目的路由import VueRouter from vue-router// 引入组件 import Login from ../views/login/Login import Register from /views/register/Register.vue import Home from /views/home/Home.vue// 创建并暴露一个路由器 export default new VueRouter({mode: history, // 路由模式该模式不会在地址中显示井号#routes: [{path: /, // 路径redirect: /login // 重定向},{path: /login, // 路径component: Login // 跳转到的组件},{path: /register, // 路径component: Register // 跳转到的组件},{path: /home, // 路径component: Home // 跳转到的组件}] }) 修改一下登录界面 去掉注册功能 src\views\login\Login.vue 删除红色框部分 src\views\register src\router\index.js 添加背景图片 src\views\login\Login.vue 测试 完整代码 src\views\login\Login.vue templatediv classlogin-backgroundel-card classbox-cardh2体育器材管理后台/h2el-form:modelruleFormstatus-icon:rulesrulesrefruleFormlabel-positionleftlabel-width70pxclasslogin-fromel-form-item label用户名 propusernameel-input v-modelruleForm.username/el-input/el-form-itemel-form-item label密码 proppasswordel-inputtypepasswordv-modelruleForm.passwordautocompleteoff/el-input/el-form-item/el-formdiv classbtnGroupel-buttontypeprimaryclicksubmitForm(ruleForm)v-loadingloading登录/el-buttonel-button clickresetForm(ruleForm)重置/el-button/div/el-card/div /templatescriptexport default {data() {return {ruleForm: {username: ,password: ,},rules: {username: [{ required: true, message: 用户名不能为空, trigger: blur },],password: [{ required: true, message: 密码不能为空, trigger: blur },],},loading: false, // 是否显示加载动画};},methods: {submitForm(formName) {// 验证表单中的账号密码是否有效因为在上面rules中定义为了必填 required: truethis.$refs[formName].validate((valid) {// 点击登录后让登录按钮开始转圈圈展示加载动画this.loading true;// 如果经过校验账号密码都不为空则发送请求到后端登录接口if (valid) {let _this this;// 使用 axios 将登录信息发送到后端this.axios({url: /api/admin/student/login, // 请求地址method: post, // 请求方法headers: { // 请求头Content-Type: application/json,},data: { // 请求参数username: _this.ruleForm.username,password: _this.ruleForm.password,},}).then((res) { // 当收到后端的响应时执行该括号内的代码res 为响应信息也就是后端返回的信息if (res.data.code 1) { // 当响应的编码为 1 时说明登录成功// 将用户信息存储到sessionStorage中sessionStorage.setItem(userInfo, JSON.stringify(res.data.data));// 跳转页面到首页this.$router.push(/home);// 显示后端响应的成功信息this.$message({message: res.data.data,type: success,});} else { // 当响应的编码不为 1 时说明登录失败// 显示后端响应的失败信息this.$message({message: res.data.msg,type: warning,});}// 不管响应成功还是失败收到后端响应的消息后就不再让登录按钮显示加载动画了_this.loading false;console.log(res);});} else { // 如果账号或密码有一个没填就直接提示必填不向后端请求console.log(error submit!!);this.loading false;return false;}});},resetForm(formName) {this.$refs[formName].resetFields();},}, }; /scriptstyle scoped /* 设置登录面板居中宽度为400px */ .box-card {margin: auto auto;width: 400px; } /* 设置登录面板中的表单居中 */ .login-from {margin: auto auto; }/* 背景图片 */ .login-background { background-image: url(/src/assets/bg.jpeg); background-size: cover; background-position: center; height: 100vh; display: flex; /* 如果你想要使用Flexbox来居中el-card */ justify-content: center; /* 水平居中 */ align-items: center; /* 垂直居中 */ } /style
http://www.dnsts.com.cn/news/240949.html

相关文章:

  • 专业设计网站排行榜影楼模板网站
  • 东莞外贸网站wordpress配置伪静态页面
  • 做网站有要求吗千锋教育视频
  • 网站栏目设计内容yw55516can优物入口
  • 张家港网站建设制作在线网站建设课程
  • 江苏省住房城乡建设厅网站html留言簿网站基本框架搭建
  • 中国最好的网站制作公司云程环境建设集团网站
  • 做网站什么程序好做几个小网站还是做一个大网站
  • 怎么做网盘搜索网站一般做网站宽度是多少
  • 网站专属定制高端网站建设网站建设常用六大布局
  • 被墙的网站有哪些临沂兰山建设局网站
  • 青岛开发区制作网站公司培训教育网站开发
  • 营销型网站的建设规划海外贸易在什么网站做
  • 四川建设厅网上查询网站京东旗下的企业网站有哪些
  • 餐饮网站建设优化建站amp 插件 wordpress
  • 建设银行网站查询密码是什么免费主页空间申请网站
  • 十堰吉安营销型网站优化营销怎样做网站的二维码
  • 嘉峪关做网站做ip资讯的网站
  • 爱网站黄页网站推广广告申请
  • 微网站首选公司吉林省吉林市地图
  • 成都微信网站建设公wordpress 换服务器
  • 毕业设计网站前端代做未来网站发展方向
  • 温州 网站建设公司不成立公司怎么做企业网站
  • 时代创信网站设计 北京wordpress 做图片站
  • 绿色科技网站建设云南建设学院的网站
  • 网站优化三要素php网站开发怎么接私活
  • 网站开发需要多少钱服务在哪里买域名
  • 高端网站设计公司江西机场建设集团网站
  • 网站推广方案的构成企业黄页网站源码
  • 做网站跟赚钱嘛wordpress api下载