1. 找到在 index.html 中对 ico 设置无效问题的原因了——使用了 pwa 插件,会覆盖 ico 配置。在 vue.config.js 中设置 pwa 对应的配置即可解决。
  2. safari 浏览器对于部分 ISO时间格式 的解析错误,目前使用时间戳是比较稳的方法。
  3. 疑问: element-ui 中的 table 加入 border 属性后,可以设置表头宽度,探索实现原理时,发现一个 style arrtribute {} 选择器,是通过原生方法 setArrtribute() 实现的吗? 如果是,为什么在审查模式 dom 节点上下不能看到它?
  4. webstorm 当设置 line comment at first column 可能无效的时候,关闭 EditorConfig , IDE 可能会在界面上提示你冲突了, 点击 disable 后,重启 IDE 即以设置为准
  5. 与 php 对接使用 formData 时,如果是数组类型,需要考虑在 key 后面补上 [],比如
      formData.append('files[]', files[0], 'file.jpg')
      formData.append('files[]', files[1], 'file.jpg')
    
  6. 知乎广告类名黑名单 .Banner-image .Pc-feedAd-container
  7. flutter GridView(), FractionallySizedBox() 一个栅格组件,一个百分比组件
  8. flutter install 在连接设备是安卓的情况下,使用 build\app\outputs\apk\app.apk 文件安装
  9. await 处理 Promise 函数,只有可能得到 Promise Resolve 状态的值,如果 Promise 函数变为 Reject 状态,则会被上级函数的 catch 方法捕获 ``` async function f() { await Promise.reject(‘出错了’); console.log(‘执行不到这儿啦’); }

f() .then(v => console.log(v)) .catch(e => console.log(e)) // 出错了

10. 在 `vue` 中,一个组件使用 `$emit` 实际上是给谁了呢?是传递给父组件了吗?会继续向上传递吗?
实际上是给了自己本身;并且 `vnode` 的时间也不会向上传递; `$emit` 触发后,会触发组件自身上的 `vnode.componentOptions.listeners` , 这个属性可以直接设置,也可以 `$on(eventName, eventHandler)` 设置,更可以在 `tmp` 上对组件写入属性 `@eventName="eventHandler"` 设置。
11. `flutter` 中的 `debug` 模式, `dart` 使用了 `JIT(just in time)`,而 `realease` 模式使用了 `AOT(ahead of time)` [参考](https://book.flutterchina.club/chapter1/flutter_intro.html)
12. `git` 操作出现 `refusing to merge unrelated histories` ,本质上是因为远程端与本地端是2个完全独立的历史。通过指令 `git pull origin master --allow-unrelated-histories` 可以允许合并无关的两个历史。
13. 在 `vue` 中可以直接监听生命周期回调,如下

// $on this.$once(‘hook:beforeDestroy’, () => { clearInterval(timer); }); ```