把几个基础小功能迁移到独立的 sol.tool 库中
This commit is contained in:
		
							parent
							
								
									e35794ced1
								
							
						
					
					
						commit
						dc4cf12c08
					
				
							
								
								
									
										8
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,8 @@
 | 
			
		||||
# 以'#'开始的行,被视为注释.                                                                                                                          
 | 
			
		||||
node_modules
 | 
			
		||||
package-lock.json
 | 
			
		||||
.vscode
 | 
			
		||||
.svn
 | 
			
		||||
~*
 | 
			
		||||
.gitattributes
 | 
			
		||||
dump.rdb
 | 
			
		||||
							
								
								
									
										16
									
								
								.prettierrc.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								.prettierrc.js
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,16 @@
 | 
			
		||||
/* 
 | 
			
		||||
对 VSCode Prettier 有效;建议一直要有本配置文件,否则不同版本的 Prettier 的默认配置会不同,例如 TrailingComma
 | 
			
		||||
对 VSCode Prettier Standard 无效,似乎是集成了不能修改的配置。
 | 
			
		||||
*/
 | 
			
		||||
module.exports = {
 | 
			
		||||
  printWidth: 160, // default 80
 | 
			
		||||
  tabWidth: 2, // default 2
 | 
			
		||||
  useTabs: false,
 | 
			
		||||
  semi: false, // default true
 | 
			
		||||
  singleQuote: true, // default false
 | 
			
		||||
  trailingComma: 'es5', // none (default in v 1.*), es5 (default in v2.0.0), all
 | 
			
		||||
  bracketSpacing: true, // default true
 | 
			
		||||
  jsxBracketSameLine: false, // default false
 | 
			
		||||
  arrowParens: 'always', // avoid (default in v1.9.0), always (default since v2.0.0)
 | 
			
		||||
  quoteProps: 'as-needed', // as-needed (default), consistent, preserve
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										25
									
								
								index.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								index.js
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,25 @@
 | 
			
		||||
/* 基础小工具,可通用于服务端和用户端
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
module.exports = {
 | 
			
		||||
  sleep: (ms) => new Promise((resolve, reject) => setTimeout(resolve, ms)),
 | 
			
		||||
  parseJsonPossible(value) {
 | 
			
		||||
    try {
 | 
			
		||||
      return JSON.parse(value)
 | 
			
		||||
    } catch (e) {
 | 
			
		||||
      return value
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  sortAndFilterJson({ fields, entity, exclude = [] } = {}) {
 | 
			
		||||
    const newEntity = {}
 | 
			
		||||
    for (let key of Object.keys(fields).sort()) {
 | 
			
		||||
      if (typeof (entity[key] !== 'undefined') && !Number.isNaN(entity[key]) && entity[key] !== Infinity) {
 | 
			
		||||
        newEntity[key] = entity[key]
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
    for (let exkey of exclude) {
 | 
			
		||||
      delete newEntity[exkey]
 | 
			
		||||
    }
 | 
			
		||||
    return JSON.stringify(newEntity)
 | 
			
		||||
  },
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										13
									
								
								package.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								package.json
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,13 @@
 | 
			
		||||
{
 | 
			
		||||
  "name": "sol.tool",
 | 
			
		||||
  "version": "0.1.0",
 | 
			
		||||
  "private": true,
 | 
			
		||||
  "dependencies": {
 | 
			
		||||
  },
 | 
			
		||||
  "devDependencies": {
 | 
			
		||||
  },
 | 
			
		||||
  "scripts": {
 | 
			
		||||
    "setup": "npm install"
 | 
			
		||||
  },
 | 
			
		||||
  "author": ""
 | 
			
		||||
}
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user