Rails 应用开发笔记(十二)

在做 GitHub 账户登录的过程中碰到一个问题:由于认证过程会接连发送几次 http 请求,在网络不好的情况下,点击登录按钮之后发现没有任何反应,过几秒之后才会进入登录状态。对于一般用户来讲,这样的体验是非常不好的,我们希望有个进度条能够显示当前请求的状态,幸运的是,Rails 自带了 gem 包可以帮助实现这个功能,那就是 turbolinks。

turbolinks 的主要作用是为了加速页面渲染,进度条功能只是它提供的其中的一个功能之一,但是本篇主要介绍如何通过它来实现网页进度条,加速渲染功能可能会在之后介绍道。

turbolinks

如果 turbolinks 3 正式发布之后,也许我这篇文章就没有什么作用了,因为版本3已经默认进度条功能是开启状态,所以完全不需要做任何特殊的配置,然是如果用的是 turbolinks 3 之前的版本,你需要做一些配置,只需要一行代码:

#app/assets/javascripts/application.js
Turbolinks.enableProgressBar();

该行代码的意思是打开 Turbolinks 的进度条功能,当重新点击网站页面的时候,进度条就会出现,超 easy!

如果想定制进度条的外观,可以通过 CSS 来实现:

#app/assets/stylesheets/application.scss
html.turbolinks-progress-bar::before {
  background-color: red !important;
  height: 5px !important;
}

然后点击网站页面,进度条变成红色,并且宽度增加:

2019

代码整洁之道——程序员的职业素养

少于 1 分钟读完

很难想象我在读这本书的时候是除夕的晚上,早晨在公司的书架上无疑翻到这本书,读了几个章节就被深深的吸引住了, 吸引我的并不是我很迫切的需要提高自己的职业素养,而是发现作者描述的场景和自己碰到的情况何其的相似,在某些 情况下甚至是直击内心的。在家人都休息的时候,我在深夜一点钟看完了这本书,而且我觉得有必要做一下笔记,...

解决 nginx 错误:413 Request Entity Too Large

1 分钟读完

最近项目上遇到一个问题,某个 http 请求会返回 413 的状态码,一般来讲,这个问题是很好解决的, 网上有非常多的解决方案,但是我依然花了很长的时间找到问题根源,所以我觉得可以把这个过程记录下来。

Back to Top ↑

2018

Back to Top ↑

2017

Back to Top ↑

2016

Back to Top ↑

2015

Back to Top ↑

2014

Back to Top ↑