chatgpt-web-dev / chatgpt-web

A third-party ChatGPT Web UI page built with Express and Vue3, through the official OpenAI completion API. / 用 Express 和 Vue3 搭建的第三方 ChatGPT 前端页面, 基于 OpenAI 官方 completion API.
https://chatgpt-web.dev
MIT License
1.54k stars 437 forks source link

最新版本【aaae763】的复制功能用不了,麻烦复原下原来的!!! #530

Closed huangzt closed 1 month ago

BobDu commented 1 month ago

我在 chrome 123 浏览器中测试复制按钮是可以正常工作的 可以提供一些更多的信息以更好的解决这个问题吗?

huangzt commented 1 month ago

我在 chrome 123 浏览器中测试复制按钮是可以正常工作的 可以提供一些更多的信息以更好的解决这个问题吗? 我的是macbook pro m1 mac下都提示复制失败!

image image

Parallels Desktop 虚拟机win11,同样也是提示复制失败!

image image

这个js对象 navigator.clipboard 是 undefined

上面各个版本测试了,确实不行。可以让有macbook的同事帮忙测试下

huangzt commented 1 month ago

原来的代码这样改就可以了吧?可能是监听事件的问题!

export function copyToClip(text: string) { return new Promise((resolve, reject) => { try { const input: HTMLTextAreaElement = document.createElement('textarea') input.setAttribute('readonly', 'readonly') input.value = text?.replace(/\n+$/, '\n') document.body.appendChild(input) input.select() if (document.execCommand('copy')) document.execCommand('copy') document.body.removeChild(input) resolve(text) } catch (error) { reject(error) } }) }

huangzt commented 1 month ago

上面这样改测试没有问题的,仅供参考:

image
BobDu commented 1 month ago

应该是 你使用的 http 访问一个非localhost地址 导致的 navigator.clipboard api无法使用? 方便的话帮忙测试一下PR中的更改是否解决了这个问题? ping @huangzt

huangzt commented 1 month ago

测试可以 @BobDu