Laravel 记录一次报错:TypeError Illegal offset type in isset or empty 作者: Chuwen 时间: 2021-08-21 分类: PHP 评论 ## TypeError: Illegal offset type in isset or empty > Illuminate\Routing\Router::uniqueMiddleware > vendor/laravel/framework/src/Illuminate/Routing/Router.php:1290 ![](https://cdn.nowtime.cc/2021/08/21/37727170.png) 错误原因,大概可以定位到你的路由配置有问题,我的出现这个报错是我定义了这样的路由: ```php // 添加/更新 信用卡信息 Route::middleware([['throttle:set-card-info']]) ->any('set-card-info', 'App\Http\Controllers\V1\XxxxxxxxxxxController@setInfo'); ``` 错误原因就是中间件配置那里出现了问题,多打了一对 `[]` 应该改为 `Route::middleware(['throttle:set-card-info'])` ...
为 ip.NowTool.cn 代码进行了优化 作者: Chuwen 时间: 2021-08-14 分类: PHP,唠嗑闲聊 评论 ## ip.NowTool.cn 这个网站是我去年(2020年11月)左右学习 `Laravel` 框架所做的项目,主要亮点就是 - IPv6 地址精确查询,精确到 区/县,准确度比较高 - 支持对域名多解析 IP 结果展示 - 默认展示的是以你的 IP 地址进行解析的域名,返回最佳的结果 ## 优化项 1. 对 主机名 查询的 DNS 由 8.8.8.8 换成国内的,后续考虑本机自建 DNS,使用 DOT、DOH 查询。并对主机名查询结果进行了缓存,缓存 10 分钟,首页进入效率大大提升。 > 因为我发现耗时操作部分消耗在了这里 2. 对查询结果的 IPv4、IPv6 地址等信息进行缓存,缓存时间 10 天,因为基础数据库不会经常更新,所以设置缓存 10 天 3. 将 PHP 版本升级为 8.0,并添加 `opcache` 缓存扩展 ## 对报错的处理 看了下报错,主要是 DNS 查询结果判断问题,造成判断类型不同导致报错从而出现 500(比较频繁) 还有就是对其他方面加强异常捕获 ——2021年8月14日 星期六 01:58 ![](https://cdn.nowtime.cc/2021/08/14/2169751793.png)
Vue.js 使用 form 表单,按下 Enter 或 Submit 按钮阻止跳转页面 作者: Chuwen 时间: 2021-08-07 分类: Vue.js,JavaScript 1 条评论 #### 添加 `.prevent` 事件修饰符即可阻止跳转 [https://cn.vuejs.org/v2/guide/events.html#事件修饰符](https://cn.vuejs.org/v2/guide/events.html#事件修饰符 "https://cn.vuejs.org/v2/guide/events.html#事件修饰符") > 使用 `form` 的好处还有一点就是,在 input 按下回车(Enter)即可提交表单 ```vue 提交 ```
Vue.js 在其他 js 文件调用 main.js 的 Vue 扩展方法 作者: Chuwen 时间: 2021-08-06 分类: Vue.js,JavaScript 评论 > 表述的不是很准确 `main.js` 扩展了以下方法: ```js import Vue from 'vue' import App from './App.vue' import dayjs from 'dayjs' dayjs.locale('en') dayjs.extend(require('dayjs/plugin/localizedFormat')) //看这里! Vue.prototype.$dayjs = require('dayjs') new Vue({ render: h => h(App), }).$mount('#app') ``` 某个文件夹下的 `Request.js` 需要调用刚刚扩展的方法,需要这么做: ```js // 注意要导入这个包 import Vue from 'vue' // 这样子就可以用了 const dayjs = Vue.prototype.$dayjs console.log(dayjs()) ```