手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜Qcloud , 注册 | 登陆
浏览模式: 标准 | 列表2019年05月5日的文章

browser.min.js 报错:Cannot read property 'keys' of undefined

 在IE下,果然什么样的问题都会发生,为了兼容旧版浏览器,大家都知道要加载browser.min.js。然而。。。问题还是来了,就象标题那样。

查了一些资料,发现很多人都遇到过,原来。。。。居然是browser.min.js的版本太高了,降为 5.8.24 ,世界清静了
 
然而还是遇到一点问题,为了想用一些新的语法,用了<script type="text/babel">,但这样却导致vue 中的变量无法识别。尴尬 ,这一点还没有想到好办法
 
没办法用纯VUE进行开发,只能先PHP+VUE进行混写了

Tags: browser

workerman 无限reload的问题

不喜用swoole,主要还是因为workerman是PHP版的,几乎不需要有什么额外的依赖。而Swoole则需要扩展。

 

调试阶段遇到和踩的一些坑在这里记录一下
1、因为reload不是重启,所以如果有一些文件需要reload,必须要onWorkStart里,不能在之前就include进来。否则无效
2、因为引入了Yii的queue,而Yii的queue,不是一个标准的controller,他只要调用过的Job,就会在内存里,所以只能通过exec(yii queue/run)之类的(当然,这本身也应该用supervisor或者systemd来进行管理)
3、无限reload:这个问题比较妖,我开始一直以为是官方例子里的last_time没有赋值或者赋值失败。所以测试了一些:
  1. $worker->reloadable = false,必须要为false 
  2. 如果 Timer::add(3 , 'check_file_change'),如果这里是一个callable,那么死活就是无限reload(也可能是我方法不对?),直接我用Timer::add(3,function(){ ... })就正常了
4、官方有一个GlobalData的共享组件,如果你本身有redis之类的,就不要用了。当然他比较简单一些(反正他也不是什么分布式)
5、其他还有一些小坑,后续再说了

Tags: workerman