Vue页面功能设计:随机生成一句名言或者励志的话

news2024/11/24 20:34:47

前言

最近在写自己的项目,发现脚注不知道写什么好。思来想去,反正是自己的写着玩的项目,没必要搞什么备案号之类的。倒不如每次加载页面的时候,随机生成一句名言或者励志的话激励自己。

代码实现

关于这种的功能实现,其实有很多种。我举两个很经典的实现方式

请求开源接口(网站)

比说每次请求开源的接口或者API,现在有很多类似的接口。我们访问该url就会随机生成一句话

比如这个:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

这种的虽然简单方便,但是也有一个致命的缺点,那就是虽然是开源的,但是保不准那天这个接口或者url就不能访问了,比如我之前收藏的这类网址:

在这里插入图片描述

我之前记得明明是可以用的,过了一个月再看已经不行了,所以大家选择的时候尽量选择一些正轨的或者知名的网站。这样才能保证稳定性。

这里我顺便给大家提供一些我个人觉得好使类似的网站吧:

https://developer.hitokoto.cn/sentence/demo.html

https://api.quotable.io/random

封装数组

这种方式稍微有点笨重,但是精度更高,我们可以创建一个数组。然后里面放的都是我们自己喜欢的一些名言诗句,这样不管随机出哪个,都符合我们的口味。

代码实现

代码实现起来特别简单

文本占位符(插值语法)

首先给要展示的地方做一个占位符,方便我们使用插值语法替换成我们随机生成的句子。

在这里插入图片描述

创建数组

然后创建数组,并且塞进自己喜欢的句子,这里我为了方便区分多少条句子,每条句子都是开始用了序号。结束则是用了句号。这样的设计是为了我方便使用随机数区分每条句子

var footerContextList = "0.条条大路通罗马。1.有得有失,才是人生,切忌忿忿不平。2.你为了爱所做的一切,不应该只是单方面的牺牲;而是你也要发自内心地快乐,因为真正爱你的人,一定会想办法让你过得更快乐。3.我从不担心我努力了不优秀,只担心优秀的人都比我更努力。4.人都有自己的做人之志和生存之道,最终归结为道德底线。5.我觉得坦途在前,人又何必因了一点小障碍而不走路呢。6.如果有一天他们不能在一起,不是他太坏,而是她太好。7.凡是有良好教养的人有一禁诫:勿发脾气。8.志在山顶的人,不会贪念山腰的风景。9.今天应做的事没有做,明天再早也是耽误了。10.如果人没有错误,那铅笔还用橡皮干什么。11.孤独不是给别人机会来可怜你,而是给你机会发现更强大的自己。12.自信是成功的第一秘诀。13.富人靠资本赚钱,穷人靠知识致富。14.只要充分相信自己,没有什么困难可以足够持久。15.生活坏到一定程度就会好起来,因为它无法更坏。16.宽恕节省了生气的开支,憎恨的代价,以及能量的浪费。17.拥有青春,就拥有了一份潇洒和风流;拥有青春,就拥有了一份灿烂和微笑。18.你应感谢每位让你蜕变的人无论方式的好坏。19.诚实是成功者最珍贵的品格。20.世界上没有强大的敌人,只有不够强大的自己。21.知识是上帝付与给你去雕琢的宝石。22.当你说离开是为了不让对方受到伤害的时候,你已经给对方造成了最大的伤害。23.死亡教会人一切,如同考试之后公布的结果――虽然恍然大悟,但为时晚矣。24.时刻回想自己有什么,想要什么,自己为此做了什么。25.我一无所有,这意味着我拥有无限可能。26.亲爱的,请给这段爱一个开始,我会用心去写下属于我们的故事。27.胜利是不会向我们走来的,我必须自己走向胜利。28.把一切平凡的事做好就不平凡;把一切简单的事做好就不简单。29.刘翔永远是我们心目中的飞人,中国的骄傲,真正的赢家,支持刘翔的送鲜花。30.白天对于懒惰者等于黑夜,黑夜对于勤奋者来说等于白天。31.人只要不失去方向,就不会失去自己。32.小提琴即使断了一根弦,其余的三根弦还是要继续演奏,这就是人生。33.生活就像一杯浓酒,不经三番五次的提炼,就不会这样可口!34.路在自己脚下,没有人可以决定你的方向。35.现实的城市犹如雾中的风景,隐隐地散发着忧郁的美,承载着没有承诺的梦。36.也许所谓的幸福结局,就是抱着永不放弃的希望,继续前行。37.莎士比亚说:我们这个年纪有爱却没有未来。38.一切幸福都并非没有烦恼,而一切逆境也绝非没有希望。39.不嫉妒别人,不封闭自己,人才会大气,人大气了,天地才会变得宽广。40.每一种取舍都有不同的终局,就如走不同的路就会有不同的景致,所以,假如想看残酷的风景,不妨沉思片刻再做决定。";

然后就可以使用随机数分割句子,提取出每一个单独的句子了

 //生成随机励志句 
        getOneGreatWord(){ 
          var footerContextList = "xxx";
          //生成随机数 0-40 
          var $num = Math.round(Math.random()*40);
          var $rows = footerContextList.split("。"); 
          var start = $rows[$num-1].indexOf('.'); 
          var result = $rows[$num-1].substring(start+1); 
          return  result; 
        },
调用函数,替换占位符

我们把上述逻辑封装成函数,然后在页面加载的事宜被调用,并且把结果赋给变量即可

在这里插入图片描述

完整代码如下:

<template>
   <div>
     <p class="footer">{{footerContext}}</p>
   </div>
</template>

<script>
export default {
    name:'Footer',
    data() {
      return {
        footerContext:'', // 随机生成的句子
        styleObj:{
          marginTop:'2px'
        }
      }
   },
    methods:{
      //生成随机励志句 
        getOneGreatWord(){ 
          var footerContextList = "xxxx";
          //生成随机数 0-40 
          var $num = Math.round(Math.random()*40);
          var $rows = footerContextList.split("。"); 
          var start = $rows[$num-1].indexOf('.'); 
          var result = $rows[$num-1].substring(start+1); 
          return  result; 
        },
    },
    mounted() {
      this.footerContext=this.getOneGreatWord()
    },    
}
</script>

<style>
  .footer{
    margin-top: -2px;
    color: rgb(255, 0, 119);
  }
</style>
简写形式

差个题外话,其实可以简写,不需要专门生命变量在页面加载的时候使用钩子函数绑定,可以直接使用插值语法对应函数:

在这里插入图片描述

这样简化后的代码就是这样的:

<template>
   <div>
     <p class="footer">{{getOneGreatWord()}}</p>
   </div>
</template>

<script>
export default {
    name:'Footer',
    methods:{
      //生成随机励志句 
        getOneGreatWord(){ 
          var footerContextList = "xxx";
          //生成随机数 0-40 
          var $num = Math.round(Math.random()*40);
          var $rows = footerContextList.split("。"); 
          var start = $rows[$num-1].indexOf('.'); 
          var result = $rows[$num-1].substring(start+1); 
          return  result; 
        },
    },
}
</script>

<style>
  .footer{
    margin-top: -2px;
    color: rgb(255, 0, 119);
  }
</style>

查看效果

这样代码就写完了,自己加点小样式,就了可以查看效果

在这里插入图片描述

刷新页面

在这里插入图片描述

这样就实现了我的需求

总结

这样的小功能实现起来还挺有意思的,如果您有更好的方式实现,欢迎留下评论

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Games104现代游戏引擎学习笔记10

Physics Actors and Shapes Actor Static:静态actor&#xff0c;例如挡板等 Actor Dynamic&#xff1a;动态actor&#xff0c;例如可移动的箱子 Trigger&#xff1a;触发器 Actor-Kinematic&#xff1a;违背物理原则&#xff0c;由设计决定&#xff0c;不遵循真实物理原则 反物…

代码随想录算法训练营第四十三天 | 力扣 1049. 最后一块石头的重量 II, 494. 目标和, 474.一和零

1049. 最后一块石头的重量 II 题目 1049. 最后一块石头的重量 II 有一堆石头&#xff0c;用整数数组 stones 表示。其中 stones[i] 表示第 i 块石头的重量。 每一回合&#xff0c;从中选出任意两块石头&#xff0c;然后将它们一起粉碎。假设石头的重量分别为 x 和 y&#x…

Linux——什么是文件描述符?

目录 前文 一&#xff0c;为什么有文件描述符 二&#xff0c;什么是文件描述符 2.1 文件操作接口 2.2 文件描述符 三&#xff0c;文件描述符的原理 四&#xff0c;文件描述符的分配规则 前文 本文主要是详解一下文件描述符&#xff0c;我们从1.为什么&#xff1f;2.是什么&…

SpringBoot——原理(自动配置_案例(自定义阿里云文件上starter))

starter定义 starter就是springboot中的起步依赖&#xff0c;虽然springboot已经提供了很多的起步依赖&#xff0c;但是在实际项目开发中可能会用到和第三方的技术&#xff0c;不是所有第三方在springboot中都有收录。 比如之前文章中有用到过的阿里云OSS&#xff0c;阿里云并…

chatgpt赋能python:**Python中的SEO:正确与错误**

Python中的SEO&#xff1a;正确与错误 对于任何一个网站&#xff0c;无论其大小和规模&#xff0c;搜索引擎优化(SEO)都是必不可少的。作为一种流行的编程语言&#xff0c;Python也可以用来优化和改进SEO操作。在本文中&#xff0c;我们将探讨Python中对于SEO的正确和错误使用…

[笔记]C++并发编程实战 《三》线程间共享数据

文章目录 前言第3章 线程间共享数据3.1 共享数据带来的问题3.1.1 条件竞争3.1.2 避免恶性条件竞争 3.2 使用互斥量保护共享数据3.2.1 C中使用互斥量3.2.2 用代码来保护共享数据3.2.3 定位接口间的条件竞争选项1&#xff1a; 传入一个引用选项2&#xff1a;无异常抛出的拷贝构造…

vuex最详细笔记总结,这些东西你真的了解吗?

1.vuex是啥&#xff1f; 简单来说就是管理数据的,相当于一个仓库,里面存放着各种需要共享的数据,所有组件都可以拿到里面的数据 2.什么时候使用vuex 1.多个组件依赖于同一状态 2.来自不同组件的行为需要变更同一状态 总之&#xff0c;就是vuex作为一个仓库&#xff0c;任何组件…

和ChatGPT关于Swing music的一场对话(下篇)

昨天无意中刷到的系统推送的文章 点进去一看&#xff0c;原来介绍的就是老苏为了抛砖引玉编的 Swing music 的镜像&#xff0c;动作真是快啊。 坦白的说&#xff0c;文章比老苏写的好&#xff0c;所以让我纠结了好一阵子&#xff0c;本文我是发呢还是不发呢&#xff1f;不过似…

jQuery实现响应式瀑布流效果(jQuery+flex)

瀑布流原理&#xff1a;是一种常见的网页布局方式&#xff0c;它的特点是将内容以多列的形式呈现&#xff0c;每一列的内容高度不固定&#xff0c;根据内容的大小自适应调整&#xff0c;从而形成了像瀑布一样的流动效果。 瀑布流的实现原理涉及到数据加载、布局设计、图片加载和…

ML算法——KNN随笔【全国科技工作者日创作】【机器学习】

9、K-Nearest Neighbors (KNN) 9.1、理论部分 K最邻近算法 把一个物体表示成向量【特征工程】,且 KNN 需要考虑 【特征缩放】。标记每个物体的标签计算两个物体之间的距离/相似度选择合适的 K 未知点的判断基于已知点的距离&#xff0c;选出最近的K个点&#xff0c;投票选出…

pyjail初了解

前言 最近在各种比赛Misc方向都能多多小小看到Python jail题&#xff0c;通过eval或者exec等函数执行Python的代码获取shell&#xff0c;实现Python逃逸&#xff0c;但是我不是太会&#xff0c;因此找点题目做一下&#xff0c;总结一下。 常用Python的魔术方法 _init_:用于P…

chatgpt赋能python:Python中小数点保留的几种方法

Python中小数点保留的几种方法 作为一名Python工程师&#xff0c;我们经常需要对数字进行处理。在处理时&#xff0c;我们需要将数字进行格式化&#xff0c;例如保留小数点后几位或添加千位分隔符等。其中&#xff0c;保留小数点后几位是比较常见的需求。本文将介绍Python中小…

chatgpt赋能Python-python中怎么安装aip

概述 在现代的SEO中&#xff0c;使用机器学习和自然语言处理的API来分析关键字和网页内容已经成为一个普遍的实践。Google API是其中最受欢迎的一个&#xff0c;因为它可以提供多种功能&#xff0c;包括分析关键字、分析文本和图像识别等。 Python作为一种优秀的脚本语言&…

Linux Apache 配置与应用 【虚拟主机 连接保持 日志分割 分析系统 优化网页】

--------构建虚拟 Web 主机-------- 虚拟Web主机指的是在同一台服务器中运行多个Web站点&#xff0c;其中每一个站点实际上并不独立占用整个服务器&#xff0c;因此被称为“虚拟”Web 主机。通过虚拟 Web 主机服务可以充分利用服务器的硬件资源&#xff0c;从而大大降低网站构建…

《深入理解计算机系统(CSAPP)》第8章 异常控制流 - 学习笔记

写在前面的话&#xff1a;此系列文章为笔者学习CSAPP时的个人笔记&#xff0c;分享出来与大家学习交流&#xff0c;目录大体与《深入理解计算机系统》书本一致。因是初次预习时写的笔记&#xff0c;在复习回看时发现部分内容存在一些小问题&#xff0c;因时间紧张来不及再次整理…

chatgpt赋能python:Python合并函数:一个简单但有用的工具

Python合并函数&#xff1a;一个简单但有用的工具 Python是一种优雅而强大的编程语言&#xff0c;拥有许多内置的函数和库&#xff0c;可以让编程变得更加简单和高效。其中&#xff0c;合并函数是一个非常有用的工具&#xff0c;它可以让我们快速而灵活地合并和处理数据。 什…

5月30日第壹简报,星期二,农历四月十二

5月30日第壹简报&#xff0c;星期二&#xff0c;农历四月十二坚持阅读&#xff0c;静待花开1. 比亚迪&#xff1a;自主研发了常压油箱的燃油蒸汽排放控制技术&#xff0c;能符合蒸发排放法规标准&#xff0c; 愿与所有同行共享核心技术专利。2. 中国计划2030年前实现首次登月&a…

chatgpt赋能python:Python中升序和降序排序:什么是升序和降序以及如何使用Python进行排序

Python中升序和降序排序&#xff1a;什么是升序和降序以及如何使用Python进行排序 介绍 Python是一种强大的编程语言&#xff0c;可以用来处理各种类型的数据。其中包括对数据进行排序&#xff0c;Python具有方便且易于使用的排序功能。在Python中&#xff0c;可以使用升序和…

chatgpt赋能python:Python中可迭代对象的介绍

Python中可迭代对象的介绍 Python是一种高级编程语言&#xff0c;它具有简单易学、可读性强、功能强大等特点&#xff0c;成为了数据科学、机器学习、Web开发等领域的热门选择。Python中有很多重要的概念和功能&#xff0c;其中之一就是支持可迭代对象的概念。 在Python中&am…

chatgpt赋能python:Python中如何生成表格

Python中如何生成表格 在数据分析和处理中&#xff0c;表格是一种常见的数据格式&#xff0c;并且在不同的场景下都有着不同的用途。Python作为一种高效的编程语言&#xff0c;可以帮助我们轻松地生成和操作表格数据。在本文中&#xff0c;我们将介绍Python中生成表格的方法&a…