Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
夜猫逐梦
1024程序员开源挑战赛
提交
e669e177
1
1024程序员开源挑战赛
项目概览
夜猫逐梦
/
1024程序员开源挑战赛
与 Fork 源项目一致
Fork自
GitCode / 1024程序员开源挑战赛(10.23-11.14)
通知
3
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
1
1024程序员开源挑战赛
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
e669e177
编写于
10月 27, 2021
作者:
B
baiy
提交者:
ninecents
10月 23, 2022
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
优化剪贴板功能 #86
上级
6f597b11
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
50 addition
and
23 deletion
+50
-23
src/config.js
src/config.js
+1
-1
src/tool/clipboard.js
src/tool/clipboard.js
+36
-0
src/tool/model.js
src/tool/model.js
+11
-20
src/views/tool/qrCode.vue
src/views/tool/qrCode.vue
+2
-2
未找到文件。
src/config.js
浏览文件 @
e669e177
...
...
@@ -39,7 +39,7 @@ const tool = [
{
'
name
'
:
'
json
'
,
'
title
'
:
'
JSON工具
'
,
'
cat
'
:
[
'
conversion
'
,
'
serialize
'
]},
{
'
name
'
:
'
url
'
,
'
title
'
:
'
URL编码
'
,
'
cat
'
:
[
'
conversion
'
]},
{
'
name
'
:
'
timestamp
'
,
'
title
'
:
'
时间戳
'
,
'
cat
'
:
[
'
conversion
'
]},
{
'
name
'
:
'
qrCode
'
,
'
title
'
:
'
二维码
'
,
'
cat
'
:
[
'
other
'
]},
{
'
name
'
:
'
qrCode
'
,
'
title
'
:
'
二维码
'
,
'
cat
'
:
[
'
generate
'
]},
{
'
name
'
:
'
pinyin
'
,
'
title
'
:
'
汉字转拼音
'
,
'
cat
'
:
[
'
conversion
'
]},
{
'
name
'
:
'
ip
'
,
'
title
'
:
'
IP地址查询
'
,
'
cat
'
:
[
'
other
'
]},
{
'
name
'
:
'
code
'
,
'
title
'
:
'
代码格式化
'
,
'
cat
'
:
[
'
other
'
]},
...
...
src/tool/clipboard.js
0 → 100644
浏览文件 @
e669e177
import
{
isUtools
}
from
'
../helper
'
// 剪贴板操作
export
const
copy
=
(
data
,
successCallback
)
=>
{
document
.
querySelector
(
'
#clipboard
'
).
innerHTML
=
'
<textarea id="clipboard-text"></textarea>
'
document
.
querySelector
(
'
#clipboard-text
'
).
value
=
data
document
.
querySelector
(
'
#clipboard-text
'
).
select
()
if
(
document
.
execCommand
(
'
copy
'
))
{
successCallback
&&
successCallback
()
}
document
.
querySelector
(
'
#clipboard
'
).
innerHTML
=
''
}
export
const
paste
=
()
=>
{
document
.
querySelector
(
'
#clipboard
'
).
innerHTML
=
'
<textarea id="clipboard-text"></textarea>
'
document
.
querySelector
(
'
#clipboard-text
'
).
select
()
document
.
execCommand
(
'
paste
'
)
let
r
=
document
.
querySelector
(
'
#clipboard-text
'
).
value
||
document
.
querySelector
(
'
#clipboard-text
'
).
innerHTML
document
.
querySelector
(
'
#clipboard
'
).
innerHTML
=
''
return
r
?
r
:
''
}
export
const
copyImage
=
(
imageBase64
,
successCallback
=
""
)
=>
{
if
(
isUtools
&&
imageBase64
){
window
.
utools
.
copyImage
(
imageBase64
)
successCallback
&&
successCallback
()
}
}
export
default
{
copy
,
paste
,
copyImage
}
src/tool/model.js
浏览文件 @
e669e177
import
config
from
'
./config
'
import
clipboard
from
'
./clipboard
'
import
setting
from
'
./setting
'
import
cache
from
'
./cache
'
import
history
from
'
./history.js
'
...
...
@@ -43,17 +44,6 @@ const model = {
}
}
const
clipboardPaste
=
function
()
{
document
.
querySelector
(
'
#clipboard
'
).
innerHTML
=
'
<textarea id="clipboard-text"></textarea>
'
document
.
querySelector
(
'
#clipboard-text
'
).
select
()
document
.
execCommand
(
'
paste
'
)
let
r
=
document
.
querySelector
(
'
#clipboard-text
'
).
value
||
document
.
querySelector
(
'
#clipboard-text
'
).
innerHTML
document
.
querySelector
(
'
#clipboard
'
).
innerHTML
=
''
return
r
?
r
:
''
}
export
const
plugin
=
{
install
:
function
(
Vue
)
{
Vue
.
prototype
.
$getToolData
=
function
(
clipboardField
=
''
)
{
...
...
@@ -63,7 +53,7 @@ export const plugin = {
data
[
clipboardField
]
=
fixeInputData
fixeInputData
=
""
}
else
if
(
setting
.
autoReadCopy
())
{
let
paste
=
clipboard
P
aste
()
let
paste
=
clipboard
.
p
aste
()
if
(
!
data
[
clipboardField
]
&&
paste
)
{
if
(
setting
.
autoReadCopyFilter
()){
paste
=
paste
.
trim
()
...
...
@@ -79,16 +69,17 @@ export const plugin = {
}
Vue
.
prototype
.
$clipboardCopy
=
function
(
data
)
{
if
(
!
setting
.
autoSaveCopy
()
||
!
data
)
return
document
.
querySelector
(
'
#clipboard
'
).
innerHTML
=
'
<textarea id="clipboard-text"></textarea>
'
document
.
querySelector
(
'
#clipboard-text
'
).
value
=
data
document
.
querySelector
(
'
#clipboard-text
'
).
select
()
if
(
document
.
execCommand
(
'
copy
'
))
{
clipboard
.
copy
(
data
,()
=>
{
this
.
$Message
.
success
(
'
结果已复制 ^o^
'
)
}
document
.
querySelector
(
'
#clipboard
'
).
innerHTML
=
''
})
}
Vue
.
prototype
.
$clipboardCopyImages
=
function
(
data
)
{
if
(
!
setting
.
autoSaveCopy
()
||
!
data
)
return
clipboard
.
copyImage
(
data
,()
=>
{
this
.
$Message
.
success
(
'
图片已复制 ^o^
'
)
})
}
},
}
export
default
model
\ No newline at end of file
export
default
model
src/views/tool/qrCode.vue
浏览文件 @
e669e177
...
...
@@ -87,7 +87,7 @@
generateHandle
(
str
)
{
generator
.
toDataURL
(
str
,
(
error
,
url
)
=>
{
if
(
error
)
return
this
.
$Message
.
error
(
'
二维码生成错误:
'
+
error
)
this
.
$
Message
.
success
(
'
生成成功
'
)
this
.
$
clipboardCopyImages
(
url
)
this
.
current
.
generateOutput
=
`<img style="width:300px" src="
${
url
}
" />`
})
},
...
...
@@ -118,4 +118,4 @@
}
},
}
</
script
>
\ No newline at end of file
</
script
>
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录