crm踩坑记(二)

Linux

tmux

如何查看css

tmux如何进行滚动呢?html

  1. prefix + [, prefix为tmux的前置动做,默认是ctrl + b
  2. 使用方向键或者pageUp来进行翻页。
  3. q能够退出滚动模式。
  4. 支持vi模式,须要在.tmux.conf里面配置: set -g mode-keys vi

进程号, 端口

ps命令查找与进程相关的PID号,能够经过man来查询ps的一些参数。node

这里讲解下最经常使用的用法: ps aux | grep vim, 查看全部的vim进程。ps aux | grep vim | grep -v grep, 查看全部的vim进程,去处掉当前的grep进程。通常查询出来的结果就是进程的id。react

1. linux
// 先查看进程的pid
ps aux | grep vim

// 根据进程的pid,使用netstat查看该进程所占用的端口
netstat -nap | grep pid

2. mac
// 直接查询与listen相关的进程全部的状况(端口号和进程号均可以看见)
lsof -i -P | grep -i "listen"

参考

ES6

Object.values

Object.values场景: Object.values(attr.value).some(x => !x), 表示只要有一个为空,则返回true。linux

可是Object.values浏览器支持的很差,可是Object.keys却支持的很是好,所以能够这样来搞:const values = Object.keys(obj).map(x => obj[x]);es6

Symbol

Symbol是ES6新引入的一个变量类型,它表示独一无二,能够这样来定义一个独一无二的值,它和任何其余变量都不相等: const a = Symbol('key')mongodb

CSS

三列布局,常见的那种等宽三列布局,就是每列的左右距离都是同样的。下面介绍经常使用的几种方法:shell

// flex
.parent {
    display: flex;
    justify-content: space-between;
}

// text-align, 它用于inline-block和inline元素
.parent {
    display: block;
    text-align: center;
}

.parent .left {
    float: left;
    /*absolute*/
}

.parent .right {
    float: right;
    /*absolute*/
}

.parent .midde {
    display: inline-block;
}

localStorage

有一个需求是,在Table展现页面的时候,点击单条数据跳到新页面,而后新页面点击跳到第三个页面,须要将某个数据在第三个页面里进行展现。因为数据结构比较复杂,若是采用reducer的话,太过于麻烦了, 会花费不少时间。数据库

所以,想了一个比较猥琐的解决办法,就是存到localStorage里面去, 每次点击Table里一条数据的时候,就将该数据存到localStorage里面去。可是后来通过实际测试,测试出来了有bug。vim

由于,若是一直点击数据,会弹出新的tab页,而每次点击后localStorage里面的值就会被更新掉,因此致使全部要跳转的第三个页面的填充值都是同样的。

can't resolve a module

ES6Module, 本身常常遇到这种状况,就直接慌了,由于感受本身查不到错,其实很简单的。总结本身的两步:

  1. 先检查路径是否正确。
  2. 检查路径的单词是否拼错。
  3. 检查被引用的JavaScript文件,发现文件名不是index.js, 而是list.js, 由于要改成index.js。这里和脚手架的配置有关系。

mongodb shell

这是真的把本身蠢哭了,由于代码跑了几回,可是数据一点儿变化都没有。后来才发现,本身在shell里面操做的时候,查询出来的数据只是部分的,须要it查看更多的数据,才发现数据是变化了的。

Why is the MongoDB Node Driver generating instance pool destroyed errors?

本身当时不太会写异步,结果数据库操做尚未处理完,可是for循环早已经结束了,所以回调就db.close了,因此致使这样的报错。

react

Map

因为本身写一个简单的map都会报错,要么是eslint,要么是语法规则,老是不能一次性写对。

// 注意map后没有分号
// 要写key
// jsx要有大括号
<ul>
    {
        data.map((x, index) => {
            <li key={index}>{x}</li>
        })
    }
</ul>

react不能识别odd, even

因为在react里面不能使用odd even这样的伪元素。所以须要本身来单独处理。

能够看这个: 一个简单的解决办法

node

classnames的用法

因为写react的时候,常常会遇到多个类的状况,我这里就不展开总结了,参考这里: classnames

写脚本操做mongodb时提示Error: cyclic dependency detectd_id

说说我遇到的一种场景: 因为要用到某条数据进行操做的时候,没有注意到它是一个对象,而后就循环引用了。

如何插入带有Object_id的数据

解决方案

代码习惯

  1. 表单提交时,能够将表单检测分为2个过程,static error check以及post error check
相关文章
相关标签/搜索