<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[m0_37828249的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/m0_37828249</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; m0_37828249]]></copyright><item><title><![CDATA[科班小前端的大厂求职路]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/105215326</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/105215326</guid><author>m0_37828249</author><pubDate>Tue, 31 Mar 2020 10:14:18 +0800</pubDate><description><![CDATA[本人今年研一，两年制硕士，今年实习。本科前半段迷茫在科班的基础理论学习和课程作业中，大一大二对前端一无所知，没想关心太多，只想保研就好。大二暑假参加一项学校项目，第一次接触前端，一脸茫然，发现软件工程还有很多值得探寻的地方。大三保研形势已定，于是参加各种比赛，摸索自己的兴趣所在，终于在一系列比赛种尝到了前端的甜头——原来好看的页面这么吃香（当时就是这么粗浅的认识），于是决定正式入坑，带着起初“前端...]]></description><category></category></item><item><title><![CDATA[Flutter典型错误：There are multiple heroes that share the same tag within a subtree.]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/105185954</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/105185954</guid><author>m0_37828249</author><pubDate>Sun, 29 Mar 2020 21:20:58 +0800</pubDate><description><![CDATA[这段错误信息描述通常如下：‘Within each subtree for which heroes are to be animated (i.e. a PageRoute subtree), each Hero must have a unique non-null tag. In this case, multiple heroes had the following tag: &lt;de...]]></description><category></category></item><item><title><![CDATA[2020年还问position:absolute，就别怪我装逼了]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/104998308</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/104998308</guid><author>m0_37828249</author><pubDate>Fri, 20 Mar 2020 20:52:19 +0800</pubDate><description><![CDATA[CSS的position属性常常被面试官拿出来考校同学的前端基本功，分别回答几个属性值是static、absolute、relative、fixed、sticky并解答一些基本特性（直接百度得到的）可以算及格，想要进一步catch their eyes，需要更深入的理解，这里视角汇聚到absolute上，看看这个最具代表性的值能做多少文章。

一重天

绝对定位，top，right，bottom ...]]></description><category></category></item><item><title><![CDATA[HR终极一问：为啥选择前端？答：混口饭吃。卒。（附网易面经）]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/104976153</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/104976153</guid><author>m0_37828249</author><pubDate>Thu, 19 Mar 2020 20:47:26 +0800</pubDate><description><![CDATA[持续面试一个多月，几乎每个大厂都配备了这道前端“送命题”，懂的人都懂，这得像哄女朋友一样，把我们对前端的热情和兴趣传达给面试官，这最后一关才算稳妥，万万不可唐突。咱第一次回答时真情实感自然流露，颇有“我和我的前端，一刻也不能分割~”之势，不过一遍又一遍重复这个剧本，我渐渐失去了感情，甚至忍不住脱口而出：“咱家不就混口饭吃嘛，还要即兴发挥篇作文歌颂下伟大的前端事业不成？”玩笑归玩笑，吐槽归吐槽，话还...]]></description><category></category></item><item><title><![CDATA[升级Chrome80后Cookie怎么都无法传输？SameSite属性了解一下]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/104964211</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/104964211</guid><author>m0_37828249</author><pubDate>Thu, 19 Mar 2020 12:06:27 +0800</pubDate><description><![CDATA[Cookie内的SameSite属性负责管控跨站请求是否附加cookie的策略，有如下三种配置：

SameSite=Strict：所有跨站请求都不附带cookie。

SameSite=Lax：部分跨站请求可以附带cookie，但是XHR（ajax）、jsonp、表单的post、iframe、img这些常用形式都不会附带cookie，而Chrome80对cookie的默认设置就是SameSite...]]></description><category></category></item><item><title><![CDATA[瞧这憨憨的操作，Windows看笑了，Flutter也来凑热闹？文件名千万别带空格！]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/104380155</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/104380155</guid><author>m0_37828249</author><pubDate>Tue, 18 Feb 2020 19:54:12 +0800</pubDate><description><![CDATA[经此一役，以后我的pc任何文件名都不会出现空格的身影了，I promise。

一切始于我需要将一个名为‘software engineer’的文件夹下的Flutter项目x，上传到远端linux服务器上。上过Linux课的我迅速敲下scp命令，不料Windows嘿嘿一笑，想不到我不支持ssh传输吧，看你咋整。我微微一怔，迅速想到git命令行支持scp，于是启动git bash，继续上面步骤，然而...]]></description><category></category></item><item><title><![CDATA[React16生命周期误用及改正]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/104348876</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/104348876</guid><author>m0_37828249</author><pubDate>Sun, 16 Feb 2020 21:12:27 +0800</pubDate><description><![CDATA[React16.3采用异步更新机制，在页面组件并不复杂的情况下，我们在屏幕外似乎捕捉到的区别并不明显，其实框架内部已经发生重大变革，配套新的更新机制，组件的生命周期有所调整，废弃了三个旧生命周期，同时React官方也对新生命周期的使用做出了指导。下面列举就我自己项目开发中总结的生命周期中最常见的不当操作以及正确姿势：

在componentDidUpdate中setState导致组件无限被更新，影...]]></description><category></category></item><item><title><![CDATA[Flutter基础：最外层组件被拉伸]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/104166215</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/104166215</guid><author>m0_37828249</author><pubDate>Tue, 04 Feb 2020 10:49:24 +0800</pubDate><description><![CDATA[其实标题就是我想讲的内容：Flutter在最外层的布局类组件Column或Row等，在主轴和交叉轴方向上都被拉伸至撑满整个屏幕。为什么单独拿出来说？因为它们在交叉轴上的宽度本来是最大子元素宽度决定的，而这里打破了这个法则，最外层组件相当于被限制了宽高必须撑满屏幕。主轴上撑满屏幕的效果乍一看好像符合Column和Row的高度计算定义，那是因为它们默认情况下mainAxisSize:MainAxis...]]></description><category></category></item><item><title><![CDATA[Flutter基础：布局出了问题，为什么我的Column用不好？]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/104162031</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/104162031</guid><author>m0_37828249</author><pubDate>Mon, 03 Feb 2020 22:08:13 +0800</pubDate><description><![CDATA[满怀信心使用Column进行布局，总会遇到各种各样异常，有的直接报错，有的表现形式和预想的不同。下面直接分场景归纳并解决Column中的问题（大多数布局问题都有Column这货参与）：

1.Column中嵌套Column，外层Column直接撑满屏幕，而内层Column只是刚好为子元素高度（子元素没有Flexible类型组件）

2.Column中嵌套Column，内层Column有Expand...]]></description><category></category></item><item><title><![CDATA[Flutter基础：Flutter的Flex布局理论以及和web的区别]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/104153852</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/104153852</guid><author>m0_37828249</author><pubDate>Mon, 03 Feb 2020 14:07:35 +0800</pubDate><description><![CDATA[Flutter的布局其实比web更简单直接，万物皆可Column与Row，这两个Flex类型组件将屏幕方方正正划分，其中Column组件让人又爱又恨，首先它让垂直方向的高度不再像web中那么难以控制，如果你在根组件中直接使用Column做最外层容器，它的默认高度就是屏幕高度，子组件又有Expanded能划分剩余空间，是不是很舒服？web中想对高度精确控制还要html,body都来个height:1...]]></description><category></category></item><item><title><![CDATA[Flutter实战：可滚动组件布局的良好实践]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/104142306</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/104142306</guid><author>m0_37828249</author><pubDate>Sun, 02 Feb 2020 12:52:47 +0800</pubDate><description><![CDATA[初入Flutter，经常直接将根组件设为Column，不断向其中添加组件，组件堆叠到一定高度溢出屏幕，屏幕底部会显示一段很小的“乱码”，不必惊慌，它只是告诉你溢出了多少。这时希望溢出容器内容产生滚动条，然而Flutter并没有传统web那么方便，所谓一个overflow属性搞定，我们不得不给Column包裹额外一层可滚动组件作为容器。

Flutter中的可滚动组件有：SingleChildScr...]]></description><category></category></item><item><title><![CDATA[Flutter使用可滚动组件（SingleChildScrollView,ListView,GridView）时的典型错误二]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/104141611</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/104141611</guid><author>m0_37828249</author><pubDate>Sun, 02 Feb 2020 09:52:33 +0800</pubDate><description><![CDATA[当一个可滚动组件中嵌套另一个可滚动组件时，会抛出如下错误信息：

The following assertion was thrown during performResize():
Vertical viewport was given unbounded height.
Viewports expand in the scrolling direction to fill their cont...]]></description><category></category></item><item><title><![CDATA[Flutter upgrade更新版本后run项目显示no device]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/104131547</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/104131547</guid><author>m0_37828249</author><pubDate>Sat, 01 Feb 2020 11:50:42 +0800</pubDate><description><![CDATA[开着项目运行了flutter upgrade更新版本后，有时dart也更新了版本，会给所有项目加上一个启动锁，重新run会抛出如下信息：Waiting for another flutter command to release the startup lock。在命令行中运行各类flutter命令也会抛出同样的错误。重启编辑器试试？然而重启后VS Code或者Android Studio显示识别...]]></description><category></category></item><item><title><![CDATA[Flutter使用可滚动组件（SingleChildScrollView,ListView,GridView）时的典型错误]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/104121933</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/104121933</guid><author>m0_37828249</author><pubDate>Fri, 31 Jan 2020 20:06:01 +0800</pubDate><description><![CDATA[话不多说，直接丢报错信息，看看自己是否遇到：

The following assertion was thrown during performLayout():
RenderFlex children have non-zero flex but incoming height constraints are unbounded.
When a column is in a parent th...]]></description><category></category></item><item><title><![CDATA[Flutter web项目发布]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/103935460</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/103935460</guid><author>m0_37828249</author><pubDate>Sun, 12 Jan 2020 21:59:30 +0800</pubDate><description><![CDATA[讲道理在本机测试发布只要按照官网教程：https://flutter.dev/docs/deployment/web

不过在本机启动服务端口的命令python -m SimpleHTTPServer 8000在python3的环境下已经改为：python -m http.server
...]]></description><category></category></item><item><title><![CDATA[Promise的finally并不是终结]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/103819555</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/103819555</guid><author>m0_37828249</author><pubDate>Fri, 03 Jan 2020 14:26:32 +0800</pubDate><description><![CDATA[开发时常常遇到一串Promise.then最后执行一个固定逻辑，显而易见要使用finally。日后需求扩展，需要在这段固定逻辑之后添加另外的异步逻辑——又想加一串then回调，这时候直接在finally之后调then是不是觉得心里发虚？但是又不愿意去将原本的调用链改变，多麻烦啊。仔细查看文档发现其实是可以的，Promise设计早就想到了，文档描述如下：

Promise.prototype.fin...]]></description><category></category></item><item><title><![CDATA[迈出Flutter第一步]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/103811899</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/103811899</guid><author>m0_37828249</author><pubDate>Thu, 02 Jan 2020 23:09:29 +0800</pubDate><description><![CDATA[Flutter是近两年蓬勃发展的跨平台前端开发框架，和传统Hybrid模式乃至React Native为代表的JS+原生渲染模式不同，Flutter采用原生自绘UI并暴露统一接口——致力于一次编码，各端（Android、IOS、Web、PC）部署，同时尽量保证UI在各个平台上表现形式的一致性，Flutter还有不少优势不再赘述，参见Flutter中文社区。

目前Flutter稳定版本支持Andr...]]></description><category></category></item><item><title><![CDATA[用自己看得懂的话总结React15到React16的变化]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/103680036</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/103680036</guid><author>m0_37828249</author><pubDate>Tue, 24 Dec 2019 13:01:30 +0800</pubDate><description><![CDATA[首先要搞懂React16诞生的原因，无非就是之前版本调度、渲染效率不高，新版本引入新机制进行全面优化。

React 框架内部的运作可以分为 3 层：

Virtual DOM 层，描述页面长什么样。
	Reconciler 层，负责调用组件生命周期方法，进行 Diff 运算等。
	Renderer 层，根据不同的平台，渲染出相应的页面，比较常见的是 ReactDOM 和 ReactNative。...]]></description><category></category></item><item><title><![CDATA[前后端视角看设计模式——策略模式]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/102795016</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/102795016</guid><author>m0_37828249</author><pubDate>Tue, 29 Oct 2019 11:28:31 +0800</pubDate><description><![CDATA[设计模式是经验之谈，对某些需求情况下的良好实践进行了归纳，虽然并非必须遵守的准则，却能对我们解决各类问题提供指引。不同语言拥有不同特性，对各类设计模式的支持度不尽相同，比如原型模式在js中是天然实现的，java也有内置的迭代器模式——有些泛用性强的模式，经过长年累月重复使用，最终会被固化到语言中。

对不同语言使用的多了，常常能感受到不同特性间的相互碰撞。于是笔者想借助前后端两门代表性...]]></description><category></category></item><item><title><![CDATA[为何有好多网站不常用table和iframe这两个元素？]]></title><link>https://blog.youkuaiyun.com/m0_37828249/article/details/98448820</link><guid>https://blog.youkuaiyun.com/m0_37828249/article/details/98448820</guid><author>m0_37828249</author><pubDate>Sun, 04 Aug 2019 10:46:20 +0800</pubDate><description><![CDATA[iframe
坏处：
是一个单独的容器，因此不会应用全局的CSS样式
会和网页共用域名连接池，因此可能由于iframe占用了连接数导致加载阻塞
搜索引擎爬虫不易爬取，不利于SEO
相比直接操作DOM元素，使用iframe更耗费资源
好处：
可以用其展示广告，可以避免由于添加广告而网站被爬虫拒绝收录的情况

table
坏处：
table的内容会等内部的所有内容加载完成才会显示，比基于div+css...]]></description><category></category></item></channel></rss>