一个 基于 cloudflare workers 和 vue ssr 的网络访问计数器

渲染效果主要看你在 url.query 传过来的 svg 模板

做这个主要是因为前几天也在 V2EX 看到一个 计数器,我在下面评论 说可以 一步到胃 直接把渲染模板传过来

我看没什么响应,就自己去实现了,起初是想做一个全局替换的,后来仔细研究了一些 svg 效果,全局替换效果辣鸡

于是想到了 vue 的 ssr 渲染函数,把你的渲染模板通过 url.query 传递到后端

我还没测过实际 http path 最大长度是多少,但是 我在 Edge@95 发长度 8000 的 url 请求没问

当然 模板 越小越好,可以提前 html minimize

数据存储是 cloudflare workers kv, 在 workers 里可以很便捷地使用,基本是 workers 的配套了

有什么错误或者需要改进的地方,请各位大佬 指正,谢谢。

https://github.com/lisonge/visit-counter.git

附上 展示的 svg 模板,可再次刷新此界面查看效果,也可以刷到 99 看看 99 到 100 动画效果

<svg
      xmlns="http://www.w3.org/2000/svg"
      :width="13 * (count + 1 + '').length + 5"
      height="16"
    >
      <g>
        <text
          v-for="n in (count + '').length"
          :key="n"
          style="font-size: 13px"
          :x="
            (n - 1) * 13 +
            ((count + '').length < (count + 1 + '').length ? 13 : 0) +
            5
          "
          y="13"
        >
          {{ (count + "")[n - 1] }}
          <animate
            attributeName="y"
            from="13"
            to="-4"
            :begin="((count + '').length - n) * 300 + 400 + 'ms'"
            dur="700ms"
            fill="freeze"
            v-if="(count + '')[n - 1] != (count + 1 + '')[n - 1]"
          />
        </text>
        <text
          v-for="n in (count + 1 + '').length"
          :key="n"
          style="font-size: 13px"
          :x="(n - 1) * 13 + 5"
          y="30"
        >
          {{ (count + 1 + "")[n - 1] }}
          <animate
            attributeName="y"
            from="30"
            to="13"
            :begin="((count + '').length - n) * 300 + 500 + 'ms'"
            dur="700ms"
            fill="freeze"
            v-if="(count + '')[n - 1] != (count + 1 + '')[n - 1]"
          />
        </text>
      </g>
    </svg>

原创文章,作者:mantou,如若转载,请注明出处:https://v2ez.com/235.html

(0)
mantoumantou
上一篇 2021年10月3日
下一篇 2021年11月14日

相关推荐

  • WordPress 2款简单的 WordPress 全站限制访问插件

    今天要介绍的这两款插件都可以实现让你的博客完全私有化,也就是说没有账户的访客只能看到登录页面。为什么有人想把博客完全私密划呢?1、只想记录给自己看的博客;2、某些内部使用的网站;3…

    2024年8月7日
  • Linux服务器SSH端口一键修改脚本

    说明:我们的很多VPS服务器,默认的端口都是22,所以一直会被人扫描爆破,很容易会出现问题,所以我们需要通过修改端口来尽可能减少这种事情发生,但对于很多小白或者很懒的人来说,更喜欢…

    代码程序 2021年5月25日
  • 1panel 自定义博客的 404 页面

    今天忽然发现,我的博客的 404 界面被 Openresty 默认的 404 界面给覆盖了,经过一番查找,终于找到了解决方法。 问题原因 默认情况下,Nginx 或 Openres…

    代码程序 2025年3月19日
  • 教你灵活解除网页操作限制

    前言 下午帮客户分析某文学登陆业务中,发现有页面禁用了网页右键,非常影响调试,平时遇到这种情况通常都是JS即可,但是网上查阅了资料后发现用控制台调节更灵活一些,毕竟禁用 JS 可能…

    代码程序 2021年4月30日
  • 一个更好用的 Maven 搜索引擎

    pache Maven 是一款非常优秀的软件项目管理工具,对于 Java 生态的开发者们再熟悉不过了。 在多年的开发过程中,对现有的 Maven 生态工具颇有微词,主要体现在: M…

    代码程序 2023年12月28日
  • Cloudflare R2+Workers!马上搭建自己的云上图床!

    结果图# 原理# 图源由 Cloudflare R2 托管,通过两个 Workers 连接 R2 以展示随机横屏/竖屏图片,静态页面引用 Workers 的 URL 以实现以上界面…

    2025年5月17日
  • 利用cloudflare的workers反向代理onemanager

    由于在国内访问巨硬的onedrive,速度实在是不太理想,大多数地区下载可能就仅仅比某度盘好那么一点点,而世纪互联又太贵(tj什么时候翻车?),所以只好用上cf的workers来给…

    2021年4月4日
  • 给别人发送图片获取别人IP小技巧

    只需要用到cloudflare 把域名解析到機子上,套上cflare 防火牆規則添加 完整uri包含自己域名 ,動作 封鎖 域名後面隨便寫一個路徑,用來識別對方,比如https:/…

    2021年4月4日
  • 自签名ssl+浏览器信任

    这里不需要指定域名,因为稍后在浏览器里面可以手动信任 openssl req -x509 -nodes -newkey ec:<(openssl ecparam -name …

    2026年1月3日
  • 开源精简小探针 Artemis

    ui使用material you design的beercss,我认为这是简洁好看的设计规范 后端则使用我自己的封装声明式后端框架 URN.ts demo 附上一张截图 使用很简单…

    2024年10月27日

发表回复

登录后才能评论