基于Vue,Vue-router,Vuex的简书网站模仿(三)

news/2024/4/29 10:21:04/文章来源:https://blog.csdn.net/weixin_33755649/article/details/89282121

接着上两篇文章继续讲,附上上两篇的地址,没看过的同学可以去看看。今天主要讲解一下登录组件部分和下载部分,也是最简单部分,今天讲完之后,作者需要潜心修炼一下后端,争取能做到和数据库进行交互,到时候再来接着写。

  • 基于Vue,Vue-router,Vuex的简书网站模仿(二)

  • 基于Vue,Vue-router,Vuex的简书网站模仿(一)

登陆界面

图片描述

由于比较简单,就不画辅助线了,可以看到登录组件部分有两个功能,登录和注册,需要根据用户的点击来切换页面内容。直接上代码:

<template><div class="login-container"><div class="login-logo"></div><div class="login-header"><a  :class="{active: loginway == 'login'}" @click="changeLogin('login')">&nbsp;&nbsp;&nbsp;&nbsp;登录&nbsp;&nbsp;&nbsp;&nbsp;·</a><a  :class="{active: loginway == 'register'}" @click="changeLogin('register')">&nbsp;&nbsp;&nbsp;&nbsp;注册&nbsp;&nbsp;&nbsp;&nbsp;</a></div><div class="login-input" v-if="loginway === 'login' "><form class="form_login" accept-charset="UTF-8" method="post"><div class="username"><span class="span1"><i class="fa fa-user"></i></span><input type="text" name="register_name" placeholder="选一个昵称" class="span2"></div><div class="password"><span class="span1"><i class="fa fa-unlock-alt"></i></span><input type="password" name="register_password" placeholder="密码" class="span2"></div><button class="login-btn btn" type="submit"><span>登录</span></button><div class="login-control" style="color:#555555;font-size:12px;"><span style="float:left" class="checkbox" :class="{checked: checked === true}"@click="checked = !checked"><input type="checkbox" style="position: absolute; opacity: 0;" checked="checked"><ins class="check"></ins></span><span style="float:left">记住我</span><span style="float:right"><a href="#" style="color:#555555">忘记密码</a></span></div></form></div><div class="login-input" v-if="loginway === 'register'"><form class="form_register" accept-charset="UTF-8" method="post"><div class="email"><span class="span1"><i class="fa fa-envelope-o"></i></span><input type="text" name="email_adress" placeholder="你的邮件地址" class="span2"></div><div class="username"><span class="span1"><i class="fa fa-user"></i></span><input type="text" name="sign_in[name]" placeholder="手机号码/电子邮件" class="span2"></div><div class="password"><span class="span1"><i class="fa fa-unlock-alt"></i></span><input type="password" name="sign_in[password]" placeholder="密码" class="span2"></div><button class="register-btn btn" type="submit"><span>注册</span></button><p class="register_text">点击 “注册” 或下方社交登录按钮,即表示您同意并愿意遵守简书 <a href="#">用户协议</a> 和 <a href="#">隐私政策</a> 。</p></form></div>            <div class="login-way"><h5>您还可以通过以下方式登录</h5><ul><li class="qqicon"><i class="fa fa-qq"></i></li><li class="weiboicon"><i class="fa fa-weibo"></i></li><li class="wechaticon"><i class="fa fa-wechat"></i></li><li class="googleicon"><i class="fa fa-google-plus"></i></li><li class="githubicon"><i class="fa fa-github"></i></li></ul></div></div></template>
<script>
import { changeLogin } from '../vuex/actions'export default{data () {let checked = 'true'return {checked}},vuex:{getters:{loginway: state => state.loginway},actions:{changeLogin}}}
</script>

可以看到我这里页面内容的方式是通过vue的v-if功能来进行显示不同的内容,而V-if内的变量我是通过vuex的getters进行获取的,为什么这么做呢?因为如果我仅仅是在当前页面切换的话是不用这么干的,但是我们在App.vue里提供了注册按钮,如果不通过VUEX的话,这个注册按钮点进来还是会显示登录界面,而不是注册界面,或者你也可以用事件分发把这个loginway参数分发出去,但是那样做太麻烦,所以我在state里面新建了一个loginway变量,这样我不管在哪里点击注册或者登录事件,都能显示对应的界面,下面是actions.js部分代码和store.js部分代码:

export const changeLogin = ({ dispatch },loginway) => {dispatch('CHANGELOGIN',loginway)
}

这是store.js

const state = {loginway = 'login'
}
const mutations = {CHANGELOGIN (statem, loginway){state.loginway = loginway}
}

做完这些,一个登录界面的UI就做好了。

下载界面

图片描述
这部只需要在router.map下添加一个路由即可,没有数据的交互,直接给代码吧:
main.js部分

import Vue from 'vue'
import App from './App'
import VueRouter from 'vue-router'import home from './components/Home.vue'
import topic from './components/Topic.vue'
import article from './components/Article.vue'
import bonus from './components/Bonus.vue'
import login from './components/Login.vue'
import topic_article from './components/Topic_article.vue'
import download from './components/Download.vue'Vue.use(VueRouter)const router = new VueRouter()router.map({'/home': {component: home,subRoutes: {'/article': {component: article}}},'/topic': {component: topic,subRoutes: {'topic_article': {component: topic_article}}},'/bonus': {component: bonus},'/login': {component: login},'/download': {component: download}
})router.redirect({'*':'/home/article'
})router.start(App,'app')
router.go('/home/article')

可以看到新加了一个download路由。接下来是download.vue部分:

<template><div class="download_container"><div class="download_content"><div class="page-left"><div class="logo"><img src="../../static/jianshu_logo.jpg"></div><div class="download_btn"><ul class="download"><li><a href="#"><i class="fa fa-android"></i>Android版</a></li><li><a href="#"><i class="fa fa-mobile"></i>iPhone版</a></li></ul><img src="../../static/download_img1.png"></div><ul class="share_list"><li>关注我们</li><li><i class="fa fa-qq"></i></li><li><i class="fa fa-weibo"></i></li><li><i class="fa fa-wechat"></i></li></ul>    </div><div class="app-img"><img src="../../static/download_img2.png"></div>    </div></div>
</template>

到这里,一个比较简单的简书首页前端页面就做完成了,相信你跟着我的这些步骤过一遍的话,对于vue-router和vuex应该有一部分了解了,简单来说就是好玩,好学。希望我能通过我的文章帮你打开进入vue的大门,还是那句话球求收藏,错误的地方请斧正!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_783911.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

shell+curl监控网站页面(域名访问状态),并利用sendemail发送邮件

应领导要求&#xff0c;对公司几个主要站点的域名访问情况进行监控。下面分享一个监控脚本&#xff0c;并利用sendemail进行邮件发送。 监控脚本如下&#xff1a;下面是写了一个多线程的网站状态检测脚本&#xff0c;直接从文件中读出站点地址&#xff0c;然后用curl去检测返回…

ruby网站部署到服务器,Ruby China 已迁移到新的服务器,基于 Docker 部署

终于决定要迁移新服务器了&#xff0c;之前那台老机器陪同 Ruby China 运作了 6 年(如果我没记错的话)&#xff0c;系统还是 Ubuntu 12.04 ...昨天下班前还是准备&#xff0c;同步数据库到 UCloud 的 PostgreSQL 服务上(避免以后自己维护和备份)。由于早些时候&#xff0c;我已…

买机电哪个网站好_装修网站哪个好?怎么挑选好的装修网站?

当下人们和父辈都已经有了很大的差异&#xff0c;以前父母亲在装修房子的时候都是直接找装修工人&#xff0c;可是对于现如今人们在装修房子的时候要求是比较高的&#xff0c;首先是找装修网站&#xff0c;这样他们能够设计出来不一样的效果&#xff0c;对于装修网站哪个好是必…

Asp.Net 4.0 SEO增强之 UrlRouting

在.Net 4.0之前我们为了做出搜索引擎友好的&#xff0c;对用户也友好的url都是需要自己实现Url重写&#xff0c;现在不需要了&#xff0c;.Net 4.0为我们做这一切。UrlRouting之所以称之为Routing是因为它不但实现了Url重写还可以通过参数得到重写后的Url在页面上使用。 1. Url…

外链引入css有哪些方式_游戏类网站外链建设需要规避的问题

游戏类网站外链建设需要规避的问题。第一&#xff0c;建设软文外链需要谨慎。要知道软文外链通常是一种较为高质量的外链&#xff0c;百度对此也表示了认可。有的游戏类网站还因此让自己的网站内容得到了更多的转载量。不过这里就存在着一个问题&#xff0c;那就是现在很多游戏…

hao123电脑版主页_Hao123这么简单的网站,百度为什么肯花5000万收购

在知名流量监测网站ALEXA上&#xff0c;Hao123历史上曾经紧随百度和淘宝&#xff0c;排名过第三。是什么让这样一个看似简陋的网站&#xff0c;有这么大的流量&#xff0c;又为什么百度肯花5000万收购。一切都从它的创始人&#xff0c;李兴平说起。1、创始人曾是网瘾少年李兴平…

RequireJs构建网站

requireJS构建网站 一.概要 requireJS添加了对jquery的amd支持&#xff0c;并整合了一个require-jquery.js脚本库&#xff0c;因此当我们需要requirejquery来构建项目的时候仅需要引入require-jquery.js就搞定了。 模块化管理有什么作用&#xff1a; 1.易管理维护。 2.按需加载…

html网页制作需要审美,哪些网站能提高HTML5网站设计师的审美?

很多人在动手做网站的时候&#xff0c;感觉无从下手。一方面是对操作不熟悉&#xff0c;另一方面是设计没灵感。一个网站做得好不好&#xff0c;除了技术关&#xff0c;美工也同样重要。操作上需要大家慢慢积累&#xff0c;而提升设计灵感&#xff0c;你只需要看这10个网站。1、…

利用其他网站的搜索结果_科普一下“网站SEO”,关键字搜索结果排名的艺术

前言什么是SEO呢&#xff1f;SEO是Search Engine Optimization&#xff0c;意为“搜索引擎优化”&#xff0c;一般简称为搜索优化。对于SEO的主要工作就是通过了解各类搜索引擎如何抓取互联网页面&#xff0c;如何进行索引以及如何确定其对某一个特定关键词的搜索结果排名等技术…

用python爬取网站数据期末作业_Python爬虫爬取博客园作业

分析一下他们的代码&#xff0c;我在浏览器中对应位置右键&#xff0c;然后点击检查元素&#xff0c;可以找到对应部分的代码。但是&#xff0c;直接查看当前网页的源码发现&#xff0c;里面并没有对应的代码。我猜测这里是根据服务器上的数据动态生成的这部分代码&#xff0c;…

整理了一周的Python资料,包含各阶段所需网站、项目,收藏了慢慢来

这周应该有不少学校已经开学了&#xff0c;那么同学们都该动起来了&#xff0c;把家里面的那些懒习惯给扔掉了可以。 不知怎么的&#xff0c;最近不少关注我的读者都开始私信我怎么学好python&#xff1f;零基础转行是不是合适&#xff0c;还有希望吗&#xff1f;今年30了&…

linux浏览器老显示安全链接,Chrome浏览器显示“网站连接不安全”怎么解决?解决方法分享...

chrome浏览器是一个非常受欢迎的搜索服务软件&#xff0c;这款软件可以满足用户非常多搜索需求&#xff0c;有很多用户都会使用这款软件进行搜索&#xff0c;功能非常的全面&#xff0c;但是在使用Chrome浏览器的也会遇到一般浏览器都会遇到的问题&#xff0c;今天小编就会与大…

产品展示网站源码_ZBLOG免费网站导航主题 – 简单且支持内页详情目录模板

之前一段时间老蒋和从业网赚类网站的网友闲聊到看到有几个做网赚导航类型的网站盈利情况还是不错的&#xff0c;当然我不熟悉这个领域也没有打算做接触这个行业。不过我看到有不少网友在寻找类似的目录导航类网站源码&#xff0c;而且看到有些简单的源码居然还需要付费购买&…

毕业设计-证券宣传手机微网站的设计与实现

本文介绍基于.net的证券公司宣传微网站手机网页的设计与实现方法。 随着计算机技术的快速发展&#xff0c;基于Web的计算机网络金融、证券宣传或交易网站已成为现代金融理财发展的热点,B/S(Browser/Server)结构的互联网宣传也逐步在各大金融证券中得到了广泛的应用[1]。互联网金…

遗传算法matlab_史上最强的MATLAB自学网站,你收藏了吗???

各位小伙伴可点击此处&#xff0c;即可进入到优化算法交流地官方账号主页&#xff08;推荐&#xff09;&#xff0c;谨防上当受骗。hello&#xff0c;大家好&#xff01;这几天是全国大学生数学建模竞赛的比赛时间&#xff0c;首先预祝各位参赛的同学能够取得好成绩。今天&…

linux更换域名全站301,网站换域名必看,全站301重定向代码分享

网站换域名了&#xff0c;至于为什么要换不多说了&#xff0c;伤心事&#xff01;犹豫了半年&#xff0c;新域名也早买好了&#xff0c;一直没下定决心要换域名&#xff0c;毕竟8年老站&#xff0c;中国不多说了&#xff0c;入题&#xff0c;想把域名换成 http://www.125jz.com…

织梦html标题怎么改,织梦网站seo优化技巧-改栏目名称seo标题即可

你们了解过织梦网站seo优化技巧吗?使用该优化首先你要改栏目名称为seo标题&#xff0c;然后在网站的UR路径上进行拼音的修改&#xff0c;修改完之后要以文章的路径保存好&#xff0c;感兴趣的话就随小编一起来了解下吧!第一步网站标题seo优化技巧:列表页标题优化技巧&#xff…

企业网站建设流程步骤,教你快速建网站

企业网站的重要性不言而喻&#xff0c;很多企业都想建一个企业网站&#xff0c;这样既能提高企业形象&#xff0c;还可以助力网络营销和品牌推广。那么如何参与到企业网站建设流程中呢&#xff1f;其实这个流程分五步&#xff0c;今天就为大家介绍一下。 第一步&#xff1a;确定…

模仿某网站招聘列表

引言 关注到一朋友所在公司的网站&#xff0c;看到招聘信息部分&#xff0c;突然觉的这个效果简单并且可复用&#xff0c;然后自己就练习了一把。 缺点 点击标题展开内容后&#xff0c;文字有点抖动&#xff0c;还没排查出来问题所在。 页面 1 <div classjobs_box>2 …

网狐网站后台发布与部署

发布成功并部署OK是这样子的 在部署前要先启用IIS功能 在控制面板的程序与功能左边可打开启用Windows功能窗口 IIS功能启用后可打开 IIS管理器,默认添加了Default Web Site