2021年3月第3周
本周落地
完成的进度如下:
对我来说Resolved
和closed
的区别在于前者是完成了,但是还没有总结。
- HTML的学习
按期完成了p26-36的学习 - CSS的学习
视频看完了,书还没有开始 - JavaScript的学习
跃进式地看到了96,书还没有开始 -
算法的学习
暂时搁置,等到H5C3JS完成之后再继续 - Node的学习
依旧为了完成工具超时了很多很多很多…… - 读完了一本书
读后感:「水母不会冻结」读后感
学习笔记
2021年3月21日22点35分尚且还未完成
HTML
CSS3
主要是讲了复合选择器:
-
后代选择器
语法: 父类 (中间一个空格) 子类 {}
例:
div p {}
-
子选择器
语法: 父类 > 子类 {}
例:
ul > li {}
子类 必须 是父类的下一级。
-
并集选择器
语法: 元素1, 元素2 {}
例:
ul, ol {}
-
伪类选择器
语法: 元素1: 伪类 {}
例:
a: visted {}
-
特殊的伪类:
:focus
,只能用于获取表单元素。
JavaScript
几个循环,都是老生长谈了。
NodeJS
这周看的视频讲的是用Express做Server。
结构的修改
源码的目录结构也改了:
|- src
| |- controllers
| |- public
| |- routes
| |- app.js
| |- server.js
目前结构变成了一个传统的MVC结构
,原本的app.js
被拆成了以下几个文件/文件夹:controllers
, routes
, app.js
, server.js
,每一个的作用更加单一:
-
controllers
具体
CRUD
发生的地方。 -
routes
每一个
route
文件对应一个router
,例如说对于user
的路由就会被单独的放在userRoute
文件下,这个文件再被app.js
引用,作为express
使用的中间件之一。在
route
文件之中,根据传来的HTTP Request
去调用对应的controller
函数。如:// 引用下面用到的函数 // 默认写法 const router = express.Router(); // 检查是否是合法的id router.param('id', checkID); // 根据http request调用对应的CRUD函数 // 此处的默认URL地址为下方 app.use() 中使用的URL router.route('/').get(getAllUsers).post(checkRequestBody, createUser); router.route('/:id').get(getUser).patch(updateUser).delete(deleteUser); // 导出路由 module.exports = router;
-
app.js
app
相关的配置,包括使用的中间件等。上方的
route
的函数使用方法如下:// 引用user路由 const userRouter = require('./routes/userRoutes'); // 其他app相关配置 // 使用 路由 中间件 // 所有路径为 '/api/users' 的URL都会去访问 userRouter 里面的函数 app.use('/api/users', userRouter);
-
server.js
server
的配置,包括读取config.env
,配置端口,确定环境等。
插件的使用
主要是eslint
和prettier
。
package.json
的更新
"devDependencies": {
"eslint": "^7.22.0",
"eslint-config-airbnb": "^18.2.1",
"eslint-config-prettier": "^8.1.0",
"eslint-plugin-import": "^2.22.1",
"eslint-plugin-jsx-a11y": "^6.4.1",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-prettier": "^3.3.1",
"eslint-plugin-react": "^7.22.0",
"prettier": "^2.2.1"
}
eslint
的配制
{
"extends": ["airbnb", "prettier", "plugin:node/recommended"],
"plugins": ["prettier"],
"rules": {
"prettier/prettier": ["error", { "endOfLine": "auto" }],
"spaced-comment": "off",
"no-console": "warn",
"consistent-return": "off",
"func-names": "off",
"object-shorthand": "off",
"no-process-exit": "off",
"no-param-reassign": "off",
"no-return-await": "off",
"no-underscore-dangle": "off",
"class-methods-use-this": "off",
"prefer-destructuring": ["error", { "object": true, "array": false }],
"no-unused-vars": ["error", { "argsIgnorePattern": "req|res|next|val" }]
}
}
prettier
的配制
{
"singleQuote": true
}
练习题
因为太多了,所以这次做了拆分:
下周计划
会将JS和CSS的书完成,H5C3JS以及Node的视频会继续,其他应该会安排其他方面的学习。
自我反思
太急躁了,有着「快点把手上的事情结束,剩下的时间就可以自由安排」了的心态,然后整个人就跟崩了一样 所有的时间 放到了工具的实现上(工作相关),但是一旦用户需求变了,那么几乎就跟做 无用功 一样。
缓一缓吧,工作是做不完的(切实体会了),也不能说因此就变成工作狂吧,根本就不是这样的人……