Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
inscode
NodeJS_639770
提交
596fe95a
N
NodeJS_639770
项目概览
inscode
/
NodeJS_639770
与 Fork 源项目一致
Fork自
inscode / NodeJS
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
N
NodeJS_639770
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
596fe95a
编写于
5月 22, 2024
作者:
View Design
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'main' of gitcode.com:git_bot/ai-fe
上级
830eb195
1df5e914
变更
3
显示空白变更内容
内联
并排
Showing
3 changed file
with
60 addition
and
43 deletion
+60
-43
components/i/search/Header.vue
components/i/search/Header.vue
+54
-0
composables/useFetchRequest.js
composables/useFetchRequest.js
+1
-1
pages/search/[id].vue
pages/search/[id].vue
+5
-42
未找到文件。
components/i/search/Header.vue
浏览文件 @
596fe95a
<
template
>
<header
class=
"sticky top-0 z-10 bg-white dark:bg-black w-full flex flex-col"
>
<div
class=
"w-full p-2 justify-end sm:justify-between items-center flex"
>
<div
class=
"flex-grow justify-center items-center space-x-2 hidden sm:flex"
>
<UTooltip
text=
"点击修改标题"
v-if=
"!isEditTitle"
>
<div
@
click=
"handleFocusTitle"
>
{{
editTitle
}}
</div>
</UTooltip>
<UInput
v-else
ref=
"titleRef"
autofocus
:model-value=
"editTitle"
@
blur=
"handleBlurTitle"
/>
<span>
/
</span>
<UButton
color=
"gray"
variant=
"ghost"
leading-icon=
"i-heroicons-plus-20-solid"
>
收藏
</UButton>
</div>
<div
class=
"flex gap-2"
>
<UButton
v-if=
"SM"
color=
"gray"
variant=
"ghost"
leading-icon=
"i-heroicons-plus-20-solid"
>
收藏
</UButton>
<UButton
@
click=
"handleShare"
leading-icon=
"i-heroicons-share-20-solid"
>
分享
</UButton>
</div>
</div>
<UDivider
/>
</header>
</
template
>
<
script
setup
>
const
props
=
defineProps
({
query
:
String
})
const
emits
=
defineEmits
([
'
update-query
'
])
const
isEditTitle
=
ref
(
false
)
const
titleRef
=
ref
(
null
)
const
editTitle
=
ref
(
''
)
watch
(()
=>
props
.
query
,
()
=>
{
editTitle
.
value
=
props
.
query
},
{
immediate
:
true
})
function
handleFocusTitle
()
{
isEditTitle
.
value
=
true
}
function
handleBlurTitle
()
{
isEditTitle
.
value
=
false
emits
(
'
update-query
'
,
editTitle
.
value
)
}
function
handleShare
()
{
useCopyToClipboard
().
copy
(
window
.
location
.
href
)
toast
.
add
({
icon
:
'
i-heroicons-information-circle-20-solid
'
,
timeout
:
2000
,
title
:
'
链接已复制到剪贴板
'
})
}
</
script
>
\ No newline at end of file
composables/useFetchRequest.js
浏览文件 @
596fe95a
...
...
@@ -5,7 +5,7 @@ const useFetchRequest = (baseUrl) => {
headers
:
{}
}
const
fetchRequest
=
(
url
,
fetchConfig
)
=>
{
url
=
`
${
BASE_URL
}${
url
}
`
url
=
`
${
baseUrl
}${
url
}
`
fetchConfig
=
fetchConfig
||
{}
fetchConfig
.
method
=
(
fetchConfig
.
method
||
'
get
'
).
toLocaleUpperCase
()
fetchConfig
=
Object
.
assign
(
config
,
fetchConfig
)
...
...
pages/search/[id].vue
浏览文件 @
596fe95a
<
template
>
<div
class=
"w-full items-center flex flex-col"
>
<header
class=
"sticky top-0 z-10 bg-white dark:bg-black w-full flex flex-col"
>
<div
class=
"w-full p-2 justify-end sm:justify-between items-center flex"
>
<div
class=
"flex-grow justify-center items-center space-x-2 hidden sm:flex"
>
<UTooltip
text=
"点击修改标题"
v-if=
"!isEditTitle"
>
<div
@
click=
"handleFocusTitle"
>
{{
state
.
query
}}
</div>
</UTooltip>
<UInput
v-else
ref=
"titleRef"
autofocus
:model-value=
"state.query"
@
blur=
"handleBlurTitle"
/>
<span>
/
</span>
<UButton
color=
"gray"
variant=
"ghost"
leading-icon=
"i-heroicons-plus-20-solid"
>
收藏
</UButton>
</div>
<div
class=
"flex gap-2"
>
<UButton
v-if=
"SM"
color=
"gray"
variant=
"ghost"
leading-icon=
"i-heroicons-plus-20-solid"
>
收藏
</UButton>
<UButton
@
click=
"handleShare"
leading-icon=
"i-heroicons-share-20-solid"
>
分享
</UButton>
</div>
</div>
<UDivider
/>
</header>
<iSearchHeader
:query=
"state.query"
@
update-query=
"handleUpdateQuery"
/>
<div
class=
"container max-w-screen-lg flex flex-col space-y-6 p-6 mb-6 pb-0"
id=
"scrollElement"
>
<div
class=
"grid"
>
<h2
class=
"text-3xl"
>
{{
state
.
query
}}
</h2>
...
...
@@ -76,7 +54,9 @@ const state = reactive({
useHead
({
title
:
`
${
state
.
query
}
- GitBot`
})
function
handleUpdateQuery
(
query
)
{
state
.
query
=
query
;
}
// 是否停止自动滚动到底部
const
isAutoToBottom
=
ref
(
true
)
const
handleScroll
=
(
event
,
params
)
=>
{
...
...
@@ -96,22 +76,6 @@ const scrollToView = () => {
const
height
=
$target
.
clientHeight
y
.
value
=
height
}
const
isEditTitle
=
ref
(
false
)
const
titleRef
=
ref
(
null
)
const
handleFocusTitle
=
()
=>
{
isEditTitle
.
value
=
true
}
const
handleBlurTitle
=
()
=>
{
isEditTitle
.
value
=
false
}
function
handleShare
()
{
useCopyToClipboard
().
copy
(
window
.
location
.
href
)
toast
.
add
({
icon
:
'
i-heroicons-information-circle-20-solid
'
,
timeout
:
2000
,
title
:
'
链接已复制到剪贴板
'
})
}
const
handleReGenerate
=
(
index
)
=>
{
editIndex
.
value
=
index
const
question
=
data
.
value
[
editIndex
.
value
].
question
...
...
@@ -127,7 +91,6 @@ const data = ref([
{
question
:
state
.
query
,
desLoading
:
true
}
])
const
recommendQuestions
=
ref
([])
const
continueQuestion
=
ref
(
null
)
// git url
const
baseGitUrl
=
computed
(()
=>
{
const
endWidthGit
=
state
.
gitPath
.
endsWith
(
'
.git
'
)
...
...
@@ -239,7 +202,7 @@ const fetchLinkedQuestion = (query) => {
}).
then
((
res
)
=>
{
if
(
res
&&
res
.
data
&&
res
.
data
.
items
)
{
recommendQuestions
.
value
=
res
.
data
.
items
.
map
(
item
=>
{
return
{
title
:
item
}
return
{
title
:
item
.
question
}
})
}
})
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录