Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
inscode
NodeJS_639770
提交
157a54ea
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看板
提交
157a54ea
编写于
5月 27, 2024
作者:
D
DebugIsFalse
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'main' of gitcode.com:git_bot/ai-fe
上级
2d00872c
47032ad6
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
39 addition
and
24 deletion
+39
-24
app.vue
app.vue
+4
-0
components/i/Sign.vue
components/i/Sign.vue
+21
-19
composables/useRequest.js
composables/useRequest.js
+1
-1
pages/signin/verify.vue
pages/signin/verify.vue
+6
-3
stores/user.js
stores/user.js
+7
-1
未找到文件。
app.vue
浏览文件 @
157a54ea
...
@@ -7,7 +7,11 @@
...
@@ -7,7 +7,11 @@
<UNotifications
/>
<UNotifications
/>
</
template
>
</
template
>
<
script
setup
>
<
script
setup
>
const
{
$updateUserInfo
}
=
useUserStore
()
useHead
({
useHead
({
title
:
'
GitBot AI
'
title
:
'
GitBot AI
'
})
})
nextTick
(()
=>
{
$updateUserInfo
()
})
</
script
>
</
script
>
components/i/Sign.vue
浏览文件 @
157a54ea
...
@@ -15,19 +15,10 @@
...
@@ -15,19 +15,10 @@
color=
"gray"
color=
"gray"
size=
"md"
size=
"md"
@
click=
"handleGetSignUrl('gitcode')"
@
click=
"handleGetSignUrl('gitcode')"
disabled
>
>
<img
src=
"~/assets/svg/logo-gitcode.svg"
/>
<img
src=
"~/assets/svg/logo-gitcode.svg"
/>
使用 GitCode 登录
使用 GitCode 登录
</UButton>
</UButton>
<UButton
block
leading-icon=
"i-simple-icons-google"
label=
"使用 Google 登录"
color=
"gray"
size=
"md"
disabled
/>
<UButton
<UButton
block
block
leading-icon=
"i-simple-icons-github"
leading-icon=
"i-simple-icons-github"
...
@@ -36,20 +27,28 @@
...
@@ -36,20 +27,28 @@
size=
"md"
size=
"md"
@
click=
"handleGetSignUrl('github')"
@
click=
"handleGetSignUrl('github')"
/>
/>
<UDivider
label=
"或"
/>
<UInput
class=
"w-full"
v-model=
"email"
placeholder=
"输入邮箱地址..."
size=
"md"
/>
<UButton
<UButton
block
block
leading-icon=
"i-heroicons-envelope-20-solid"
leading-icon=
"i-simple-icons-google"
label=
"邮箱登录"
label=
"使用 Google 登录"
color=
"gray"
size=
"md"
size=
"md"
@
click=
"handleSign"
disabled
/>
/>
<!--
<UDivider
label=
"或"
/>
-->
<!--
<UInput-->
<!-- class="w-full"-->
<!-- v-model="email"-->
<!-- placeholder="输入邮箱地址..."-->
<!-- size="md"-->
<!-- />-->
<!--
<UButton-->
<!-- block-->
<!-- leading-icon="i-heroicons-envelope-20-solid"-->
<!-- label="邮箱登录"-->
<!-- size="md"-->
<!-- @click="handleSign"-->
<!-- />-->
</div>
</div>
</
template
>
</
template
>
<
script
setup
>
<
script
setup
>
...
@@ -66,6 +65,9 @@ async function handleGetSignUrl (source) {
...
@@ -66,6 +65,9 @@ async function handleGetSignUrl (source) {
if
(
source
===
'
github
'
)
{
if
(
source
===
'
github
'
)
{
const
{
data
}
=
await
useRequest
(
'
/v1/user/github/authorize_url
'
)
const
{
data
}
=
await
useRequest
(
'
/v1/user/github/authorize_url
'
)
url
=
data
.
value
.
data
.
url
url
=
data
.
value
.
data
.
url
}
else
if
(
source
===
'
gitcode
'
)
{
const
{
data
}
=
await
useRequest
(
'
/v1/user/gitcode/authorize_url
'
)
url
=
data
.
value
.
data
.
url
}
}
window
.
location
.
href
=
url
window
.
location
.
href
=
url
}
}
...
...
composables/useRequest.js
浏览文件 @
157a54ea
...
@@ -26,7 +26,7 @@ const request = async (url, options = {}) => {
...
@@ -26,7 +26,7 @@ const request = async (url, options = {}) => {
}
}
}
}
return
await
useFetch
(
fullUrl
,
Object
.
assign
(
config
,
options
))
return
useFetch
(
fullUrl
,
Object
.
assign
(
config
,
options
));
}
}
export
default
request
export
default
request
pages/signin/verify.vue
浏览文件 @
157a54ea
...
@@ -12,14 +12,17 @@ const state = reactive({
...
@@ -12,14 +12,17 @@ const state = reactive({
source
:
route
.
query
.
source
||
''
,
source
:
route
.
query
.
source
||
''
,
code
:
route
.
query
.
code
||
''
code
:
route
.
query
.
code
||
''
})
})
let
url
const
{
data
}
=
await
useRequest
(
'
/v1/user/github/login
'
,
{
if
(
state
.
source
===
'
github
'
)
url
=
'
/v1/user/github/login
'
else
if
(
state
.
source
===
'
gitcode
'
)
url
=
'
/v1/user/gitcode/login
'
const
{
data
}
=
await
useRequest
(
url
,
{
query
:
{
code
:
state
.
code
},
query
:
{
code
:
state
.
code
},
server
:
false
,
server
:
false
,
onResponse
({
response
})
{
onResponse
({
response
})
{
useStorage
(
'
token
'
,
response
.
_data
.
data
.
access_token
)
useStorage
(
'
token
'
,
response
.
_data
.
data
.
access_token
)
useStorage
(
'
user-info
'
,
response
.
_data
.
data
.
user_info
)
useStorage
(
'
user-info
'
,
response
.
_data
.
data
.
user_info
)
// useCookie('token')
navigateTo
(
'
/
'
)
navigateTo
(
'
/
'
)
}
}
})
})
</
script
>
</
script
>
\ No newline at end of file
stores/user.js
浏览文件 @
157a54ea
...
@@ -19,5 +19,11 @@ export const useUserStore = defineStore('user', () => {
...
@@ -19,5 +19,11 @@ export const useUserStore = defineStore('user', () => {
userInfo
.
value
=
null
userInfo
.
value
=
null
}
}
return
{
$info
,
$isSignIn
,
$signOut
}
async
function
$updateUserInfo
()
{
if
(
!
token
.
value
)
return
const
{
data
}
=
await
useRequest
(
'
/v1/user/user_info
'
)
userInfo
.
value
=
JSON
.
stringify
(
data
.
value
.
data
)
}
return
{
$info
,
$isSignIn
,
$signOut
,
$updateUserInfo
}
})
})
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录