Watched "WALL-E"
夏时制即将结束所思所想
这是我对看新西兰站长所发文章「4月5日星期天凌晨3点新西兰夏令时结束」的评论。
这意味着对那些不记录 unix 时间戳而只记录本地时间的系统,如果他们依赖时间排序(因为没有时间戳)的话,夜里2点-3点钟的记录会是紊乱的,因为这段时间会过两遍。显示上看起来没有问题的数据,其实是偏离真实顺序的。比如一篇文章的两个评论,明明是后面的评论回复前面的评论,即可能现回复的评论先显示,然后才显示被回复的评论这种“怪事”。当然了,如果用unix时间戳排序会有另一种问题,数据的顺序是正确的,但显示的本地时间却是紊乱的。可能出现显示一个人在 2:45 分发表了一篇评论,但另一个人却“使用了月光宝盒”回到 2:15 分回复 2:45 分评论的“怪事”。
站长说的对,人们应该调整自己的作息时间,而不是调快或调慢计划仪器。但站长说的又是错的,因为人是愚蠢的动物,自律的人是那么的少,如果依赖们自己调整作息时间,节能效果就会大打折扣。所以“调快调慢”计时设备这个看上去错误的解决方案,即又是最管用的方案。世界就是这么奇妙!
We learn from history that we do not learn from history.
Defining arrow functions at a wrong place caused *this* object becoming undefined.
Today I was caught by a bug. I got an error message like "Uncaught (in promise) TypeError: Cannot set property 'users' of undefined" in the following code:
import axios from 'axios';
export default {
name: "Users",
data() {
return {
users: null
};
},
created: () => {
axios
.get('https://jsonplaceholder.typicode.com/users')
.then(res => {
this.users = res.data;
})
}
}
Finally, I figured it out by changing the created method definition from an arrow function to a normal function, the following is the correct code:
import axios from 'axios';
export default {
name: "Users",
data() {
return {
users: null
};
},
created() {
axios
.get('https://jsonplaceholder.typicode.com/users')
.then(res => {
this.users = res.data;
})
}
}
Do you see the difference?