blog icon indicating copy to clipboard operation
blog copied to clipboard

红日初升,其道大光:sun_with_face::house_with_garden:请star或watch,不要fork

Results 100 blog issues
Sort by recently updated
recently updated
newest added

自己刷抖音时训练的模型不行呀,推荐给我的都是一些沙雕视频,都是抠脚大汉,很少漂亮的小姐姐,但是自己刷抖音训练的话又太耗时间了,刚看看了 ADB ,发现这个简直就是宝库,想着就要不就使用 ADB 来帮我训练一下,省的我手动训练了。 ![](http://ww4.sinaimg.cn/bmiddle/9150e4e5ly1fdvwjjh5jcj204n05i74d.jpg) 关于 ADB,可以看我之前的文章,[ADB 实用笔记](https://juejin.im/post/5d2a1586f265da1b7e106596) 首先使用 Node.js 封装下 ADB 的命令,为了兼容连接多台设备的问题,可以使用一个标志位,同时每次使用的时候使用 `use` 方法来指定对应的设备,`call` 方法作为所有调用命令的基础方法: ```js const { exec } = require('child_process') const path = require('path') let currentDeviceName...

![](http://upload-images.jianshu.io/upload_images/1641380-da93ca8155d59b1f.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) 开发web应用时,我们总是需要对用户的数据进行验证,这包括客户端的验证以及服务端的验证,仅仅依靠客户端的验证是不可靠的,毕竟我们不能把所有的用户都当成是普通用户,绕过客户端的验证对于部分用户来说并不是什么难事,因此所有数据应该在服务端也进行一次验证。Express应用可以通过express-validator进行数据验证,这样就不必自己烦琐的为每一个数据单独写验证程序(过来人告诉你这感觉简直糟透了)。 通过一个简单的例子让我们来看看express-validator的便捷,让用户上传一些数据,表单如下: ![](http://upload-images.jianshu.io/upload_images/1641380-810a90da6580539f.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) 最简单的服务端代码如下: ```JavaScript var express = require('express'); var bodyParser = require('body-parser'); var expressValidator = require('express-validator'); var check = require('express-validator/check').check; var validationResult = require('express-validator/check').validationResult; var app = express();...

JavaScript
Node.js
Express

App 中的搜索功能非常常见,Flutter 提供了内置的搜索功能,如最常见的把搜索功能放置在 appbar 的右边: ```dart import 'package:flutter/material.dart'; void main() => runApp(MaterialApp( home: MyApp(), )); class MyApp extends StatelessWidget { const MyApp({Key key}) : super(key: key); @override Widget build(BuildContext context)...

我们使用 react-redux 的 connect 这个 hoc 来实现对组件的状态注入,一般情况下只用到 `mapStateToProps` 和 `mapDispatchToProps` (其实还有不太起眼的 `mergeProps` `options` 这两个可选参数), `connect` 方法接受三个范型,分别对应 `mapStateToProps`、`mapDispatchToProps` 、`ownProps` 的返回值 因此为了对应这里,可以将原组件的 props interface 拆成 这三种类型,再原组件使用的时候使用ts的交叉类型来组合: ```ts const UserInfo: React.FC = ({})...

Timer 属于 Dart 异步编程的一部分,通过 Timer 可以创建执行定时器(包括重复执行的)。 主要包含 `Timer` 和 `Timer.periodic` 两个构造函数: ```dart Timer(Duration duration, void callback()) ``` ```dart Timer.periodic(Duration duration, void callback(Timer timer)) ``` 分别对应 javascript 的 `setTimeout` 和 `setInterval`...

Dart 中 Future 类似于 JavaScript 中的 Promise,类似于 Promise,Future 可以通过两个方式 completed,分别是 succeed 和 fail,相当于 Promise 里的 fullfilled 和 rejected。 简单的构造一个 Future 实例: ```dart Future(() => 12) ``` 当 Future completed 的时候可以通过...

Dart 通过 DateTime 来处理时间,`DateTime` 构造函数可以可以根据传入的参数构造一个 DateTime 实例,`DateTime.now` 构造函数返回本地时区当前时间的 DateTime 对象. ```dart DateTime(int year, [ int month = 1, int day = 1, int hour = 0, int minute = 0,...

Duration 顾名思义就是指的一段时间,用 Duration 类可以构造一段时间的对象,Duration 对象实例化的参数非常通俗易懂,可以传入对应的天、时、分、秒、毫秒、微秒 来构造对应的时间段。 ```dart Duration({int days: 0, int hours: 0, int minutes: 0, int seconds: 0, int milliseconds: 0, int microseconds: 0 }) ``` 如: ```dart Duration...

### 最简单的测试 jest 是 Facebook 推出的测试工具,enzyme 是airbnb 推出的 React 测试类库,使用两者可以很好地测试 React 组件。 首先安装对应的依赖: ```bash npm i -D jest babel-jest @babel/core @babel/preset-env @babel/preset-react ``` 其中 `babel-jest` 是自动使用 babel 编译文件。 安装 enzyme...

![1523879047317](https://user-images.githubusercontent.com/15937065/63110935-201de680-bfbf-11e9-8321-5b0369aa42f9.jpg) ### 最简单的调试 启动文件时添加 `--inspect` 命令可以启用检查器,默认端口号是 9229,启动器的客户端可以通过通过连接这个端口来进行调试,最简单的就是通过 chrome dev tool 打开 `chrome://inspect` 来打开 dev tools 进行调试。 ```bash node --inspect index.js ``` 默认端口是 `9229` ,可以指定其他端口,如: ```bash node --inspect=9002 index.js ``` 这个时候需要打开...