闻心阁

一蓑烟雨看苍生,半壶浊酒笑红尘

Bootstrap 4 中 hidden-* 和 visible-* 类都去哪了?

2018-10-17 约 1 分钟读完 搬砖秘籍
之前使用过一个CMS开发过后台系统,使用了 Bootstrap3,里面有好个非常好用的css类 hidden-* 和 visible-*,可以方便地实现响应式。最近帮朋友改一个基于 Bootstrap 4 开发的系统,却发现找不到这两个好用的类啦。后来仔细看了一下,发现在 Bootstrap 4 中,这2个类前缀已经被移除了。 取而代之的是新的控制 display 的方法,见这里:Display property · Bootstrap 几个示例 下面的示例来自 Stackoverflow Show/hide for breakpoint and down: hidden-xs-down (hidden-xs) = d-none d-sm-block hidden-sm-down (hidden-sm hidden-xs) = d-none d-md-block hidden-md-down (hidden-md hidden-sm hidden-xs) = d-none d-lg-block hidden-lg-down = d-none d-xl-block hidden-xl-down (n/a 3.x) = d-none(same as hidden) Show/hide for breakpoint and up: hidden-xs-up = d-none (same as hidden) hidden-sm-up = d-sm-none hidden-md-up = d-md-none hidden-lg-up = d-lg-none hidden-xl-up (n/a 3. 继续阅读

Nginx 中关于 try_files 一点心得

2018-09-06 约 1 分钟读完 搬砖秘籍
先来看一下常见的 Nginx 配置的写法。 root html; try_files $uri $uri/index.html /index.html; index index.html index.htm; root 的作用 就是指定一个根目录。默认的是html目录,如果是yum安装的Nginx的话,应该就是/usr/share/nginx/html。 try_files 这里理解起来有点困难,首先是$uri参数,它通常的值是这种/foo/bar(本文以此为例)。 Nginx 会先去找/usr/share/nginx/html/foo/bar这个文件,如果没有会再去找/usr/share/nginx/html/foo/bar/index.html这个文件,如果上面再没有,接下来就有点绕了,try_files 最后一个参数是发的一个请求,是请求,是请求! 所以最后一步,Nginx 会将 yourdomain.com/index.html 的内容返回! 后话 被root和try_files绕了好久,本文做一个记录。 EOF.

网页调试控制台注入jQuery

2018-09-06 约 1 分钟读完 搬砖秘籍
最近调试一个React写的网站,想在控制台进行DOM操作。虽然目前浏览器已经原生支持了querySlector,但还是不如使用jQuery方便,由于项目本身并未引入jQuery,在控制台中调试还遇到了一点困难。方法总比困难多,找了一个办法在控制台成功注入了jQuery。 注入方法 var script = document.createElement("script") script.type = "text/javascript" script.src = "//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" document.body.appendChild(script) 其实就是给网页动态加了一个引用jQuery的script标签。 改进版本 上面的方法,如果遇到网络慢的情况下,就无法确切的知道脚本有没有加载成功。解决这个问题一是可以换一个国内CDN的地址,另一种方法就是在脚本加载完成后输出一个信息,也就是监测onload方法。如下 : var script = document.createElement("script") script.type = "text/javascript" script.src = "//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" script.onload = function(){console.log("jQuery is ready!")} document.body.appendChild(script) EOF

GoCD 设置代理

2018-08-29 约 1 分钟读完 搬砖秘籍
在AWS中国(不是国际的AWS哦)上部署了GoCD,设置的是在github提交到master会自动触发 WebAPP 的打包及上线过程。但是 AWS 中国区访问 github 的速度感人,经常掉线,在代码包大一点的时候会更慢。尤其是在下午 5-6 点下班的时候,不知道大家是不是都要这个点上线:-) 为了解决这个问题找了几个解决方案出来,整理一下,备用参考。 1.等 滚 du 子, 这能叫解决方案吗? 不过在晚上 9 点之后,好像真的快些啦。 2.设置代理 我们先来看 GoCD 的部署架构。 无论是 GoCD 的 Server 还是 GoCD 的 Agent 都是以 Docker 的形式运行在 EC2 的主机上,所以这里思路也很简单,只需要在 AWS 的 EC2 上运行代理,并在 Docker 中使用就好。 1.首先你得有个代理 这里还是推荐 SS 代理,无论如何你得有。没有的话,你得想办法,这就是本文的范畴。 2.安装Linux SS包 本文使用的是这个: sudo apt-get install python-pip sudo apt-get install python-setuptools m2crypto pip install shadowsocks 将你的 SS 帐号保存在json中,并运行如下命令: sslocal -c shadow.json -d start json 文件的格式 继续阅读

VS Code 匹配中文

2018-05-28 约 1 分钟读完 搬砖秘籍
最近要把手头的一个项目支持国际化,在 VS Code 中要把中文全部搜索出来,直接用到了正则(VS Code 支持正则搜索)。 [\u4e00-\u9fa5] 搞定。

Mac下管理Java多版本的实践心得

2018-05-22 约 1 分钟读完 搬砖秘籍
在 Mac 下要跑一个公司大神给的项目,后端用到了Java 8,做为一个不起眼的前端开发,在见到Java代码之后是蒙的,好在小龙大哥的指导,才让我这Java跑起来。但是,在被前端的node坑过之后,我想起了一个恐怖的问题:Java 下是不是也有多个版本? 是 为了避免后面大神再给我一个 Java 1.7 的项目,于是我决定找办法在电脑上管理多版本的 Java。 神器 jEnv jEnv - Manage your Java environment 是一个用于管理Java多版本的工具,其使用方法推荐参考官网的方法。本文做一些节选,不保证最新哦。 安装 jEnv brew install jenv 如果用的bash echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profile echo 'eval "$(jenv init -)"' >> ~/.bash_profile 如果用的zsh echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc echo 'eval "$(jenv init -)"' >> ~/.zshrc 安装 Java jEnv 和 nvm 不一样,并不提供下载 Java 特定版本的功能(截止2018-05-22),所以需要自己手动安装。Java 6 需要从Apple webiste下载安装,Java 7、Java 8、 Java 10可以直接从官网下载。 配置 jEnv 使用如下命令: // 1. 继续阅读

Error: write after end的解决方案

2018-05-21 约 1 分钟读完 搬砖秘籍
最近在看之前的大神写的一个项目,出现了 Error: write after end 的报错信息,导致项目始终跑不起来。开始以为是我网络的问题,又是加VPN,又是挂代理,后来发现并没有用,还是install不上,后来查了一下,发现与npm版本有关。总结了下面几个解决方案。 安装特定版本npm 使用如下命令 npm install npm@4 -g 其中,@ 后接的是npm的版本。这种方法也可用于npm的降级。 切换node版本 通常这种项目是使用某一版本的node及其带的npm开发的,所以只要切换相应的node版本就可以了。笔者推荐使用nvm,运行如下命令 nvm install 6.14 nvm use 6.14 就可以了,如果要设置永久的node版本,使用如下命令 nvm alias default 8.1.0 结语 npm 这个快速发展的项目还是有的太多的不完善和不方便。虽然目前有了类似 yarn 的解决方案,但还是需要一个过程。