V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  jorneyr  ›  全部回复第 5 页 / 共 83 页
回复总数  1650
1  2  3  4  5  6  7  8  9  10 ... 83  
冻死个人了
197 天前
回复了 AoEiuV020JP 创建的主题 Google 为什么谷歌搜索有时候不会打开新窗口?
使用插件 (油猴或者 Safari 的 Userscript 插件) 在 Google 搜索页面使用下面这一段代码用 Tab 打开链接:

document.addEventListener('click', function(event) {
var target = event.target;

if (target.tagName === 'H3' && target.parentNode.tagName === 'A') {
event.preventDefault();
event.stopPropagation();
var params = new URLSearchParams(target.parentNode.href);
window.open(params.get('url'), '_blank');
}
}, { capture: true });
203 天前
回复了 overthemoon 创建的主题 Java java8 以后常用的新特性有哪些?
https://openjdk.org/projects/jdk/21/

修改版本 21 ,逐个查看。
我的电池循环 256 次,健康度被锁死 93% 一年左右了。
这个名字搜出来好多,不知道是指的哪一个: https://marketplace.visualstudio.com/items?itemName=alefragnani.project-manager
204 天前
回复了 chen88ijn 创建的主题 Apple 是因为 M1 系列牙膏挤爆了,后面挤不动了吗
换位思考,想想自己所在公司、项目组,一年能出多少成绩,苹果不是神。
试试插件 Project Manager
204 天前
回复了 mingdeng 创建的主题 程序员 这几年开始落伍的开发技术有哪些?
前端最大的变化是 IE 被 Chrome 内核替代了。
205 天前
回复了 Freeego 创建的主题 Apple 新出的 Apple M3 大家怎么看?
2 年前买了 M1 14 Pro 的人都替买这款的人肝疼。
M1 Pro CPU 够用,选 32G 内存。
217 天前
回复了 cryptogems 创建的主题 macOS 求 Berrer365 超级右键替代品推荐
复制路径: CMD + ALT +C (系统自带快捷键)
进入 Terminal: 安装 Warp ,会自动在右键菜单 Services > New Warp Tab Here
@RoninLee 他强任他强,我自清风拂山岗。
我 Java + 前端开发,16G 也没有内存焦虑。
222 天前
回复了 GreatFinger 创建的主题 macOS 请教一些 MacOS 的问题
各种快速启动可以了解一下 Alfred 或者 Raycast 。
222 天前
回复了 GreatFinger 创建的主题 macOS 请教一些 MacOS 的问题
1 、多显示器问题。
我使用了 Hammerspoon 编写脚本实现的按下 2 次 ctrl 键在不同的显示器之间移动 (移动到另一个屏幕的中间)。
也可以实现把当前窗口移动到另一个显示器中。

Hammerspoon 还能做非常多的事情,不过需要自己写代码。
挺不错
举报公司消防不合格?
226 天前
回复了 Aviciii 创建的主题 Apple 只因列表滑动让我第三次 iPhone 转安卓失败了
去实体店体验一下遥遥领先?
比这个还简洁?

* [1] 普通 GET 请求
* 提示: rsp 会自动推导出类型 Response<string>,不需要明确的写。
* Rest.get<string>('/api/rest').then(rsp => {});
*
* Rest.data({ pageNumber: 3 }).get<string>('/api/rest').then((rsp: Response<string>) => {
* console.log(rsp);
* });
*
* 其他类型的请求只需要把 get<T>() 替换为对应的函数即可,参数配置部分一样。
*
* [2] 替换 url 中的变量: 下面的 URL 中 {bookId} 会被替换为 params 的参数 bookId 的值 23 ,得到请求的 url '/rest/books/23'
* Rest.url('/rest/books/{bookId}').params({ bookId: 23 }).data({ name: 'C&S' }).update<boolean>().then(rsp => {
* console.log(rsp);
* });
*
* [3] 调用 useRequestBody() 使用 request body 传输复杂的 data 对象 (对象可以有多级属性)
* Rest.url('/api/uid').data({
* user: { username: 'Bob', password: '123456' },
* company: 'App'
* }).useRequestBody().create<User>().then(({ data: user, success, message }) => {
* console.log(user);
* });
*
* 默认使用 application/x-www-form-urlencoded 的方式,即普通表单的方式。
*
* [4] Axios 不支持同步请求,但可以在同一个函数里使用 async await 进行同步操作:
* async function syncFunc() {
* const r1 = await Rest.get('/api/rest1'); // r1 为 resolve 的参数。
* const r2 = await Rest.data({ name: 'Goo' }).create<Foo>(/api/rest2');
*
* console.log(r1, r2);
* }
* 注: jQuery 的 Ajax 支持同步请求,但是新版本中也不推荐使用了,浏览器中会有警告。
*
* [5] 请求成功表示与服务器通信成功,不代码业务处理成功。
* 使用 Rest.normalize() 根据 success 对响应统一的进行业务逻辑判断,success 为 true 表示业务处理成功,为 false 表示失败。
* 代码中逻辑更关注成功业务处理,大多数时候都可以使用 Rest.normalize() 简化开发,除非 success 的值不足以判断,
* 需要使用响应的 code 进行更多情况处理。
*
* [5.1] Api 接口文件中处理请求。
* async function findTime(): Promise<number> {
* return Rest.get<number>(url).then(({ data: time, success, message }) => {
* // 提示: 参数里进行了一次解构是为了让调用者知道 data 的业务名称,方便代码的维护。
* return Rest.normalize({ data: time, success, message });
* });
* }
*
* [5.2] Vue 文件中调用请求直接获取结果,忽略请求的细节,而且即使切换了 Api 的实现不需要修改 vue 中的代码 (如把 Axios 换为 fetch 实现)。
* findTime().then((time: number) => {
* console.log(time);
* })
* const time: number = await findTime();
1  2  3  4  5  6  7  8  9  10 ... 83  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2187 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 42ms · UTC 16:13 · PVG 00:13 · LAX 09:13 · JFK 12:13
Developed with CodeLauncher
♥ Do have faith in what you're doing.