Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
liyeyun
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
cfld-frontend
liyeyun
Commits
036ad606
Commit
036ad606
authored
Dec 06, 2023
by
shilei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: 登录注册
parent
ad9f760b
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
71 additions
and
15 deletions
+71
-15
.env.development
.env.development
+1
-0
auto-imports.d.ts
auto-imports.d.ts
+1
-1
components.d.ts
components.d.ts
+3
-0
reset.scss
src/assets/styles/reset.scss
+2
-3
CommonHeader.vue
src/components/common/CommonHeader.vue
+10
-1
filter-view.vue
src/components/filter/filter-view.vue
+8
-8
LoginView.vue
src/components/login/LoginView.vue
+0
-0
login.ts
src/components/login/login.ts
+22
-0
filterEnum.ts
src/stores/filterEnum.ts
+4
-2
api.ts
src/types/api.ts
+10
-0
vite.config.mts
vite.config.mts
+10
-0
No files found.
.env.development
View file @
036ad606
NODE_ENV=development
VITE_BASE_URL=http://test.api.liyeyun.com
VITE_BASE_USER_URL=/userAPI
auto-imports.d.ts
View file @
036ad606
...
...
@@ -5,5 +5,5 @@
// Generated by unplugin-auto-import
export
{}
declare
global
{
const
ElMessageBox
:
typeof
import
(
'element-plus/es'
)[
'ElMessageBox'
]
}
components.d.ts
View file @
036ad606
...
...
@@ -9,6 +9,7 @@ declare module 'vue' {
export
interface
GlobalComponents
{
CommonHeader
:
typeof
import
(
'./src/components/common/CommonHeader.vue'
)[
'default'
]
CommonImage
:
typeof
import
(
'./src/components/common/CommonImage.vue'
)[
'default'
]
CommonTitle
:
typeof
import
(
'./src/components/common/CommonTitle.vue'
)[
'default'
]
DetailInfo
:
typeof
import
(
'./src/components/detail/DetailInfo.vue'
)[
'default'
]
DetailInfoCell
:
typeof
import
(
'./src/components/detail/DetailInfoCell.vue'
)[
'default'
]
DetailInfoTab
:
typeof
import
(
'./src/components/detail/DetailInfoTab.vue'
)[
'default'
]
...
...
@@ -32,6 +33,8 @@ declare module 'vue' {
ListInfo
:
typeof
import
(
'./src/components/list/ListInfo.vue'
)[
'default'
]
ListLandItem
:
typeof
import
(
'./src/components/list/list-land-item.vue'
)[
'default'
]
ListPagination
:
typeof
import
(
'./src/components/list/ListPagination.vue'
)[
'default'
]
Login
:
typeof
import
(
'./src/components/login/login.vue'
)[
'default'
]
LoginView
:
typeof
import
(
'./src/components/login/LoginView.vue'
)[
'default'
]
MiniListItem
:
typeof
import
(
'./src/components/detail/MiniListItem.vue'
)[
'default'
]
ParkItem
:
typeof
import
(
'./src/components/list/ParkItem.vue'
)[
'default'
]
RouterLink
:
typeof
import
(
'vue-router'
)[
'RouterLink'
]
...
...
src/assets/styles/reset.scss
View file @
036ad606
...
...
@@ -11,7 +11,7 @@ body {
WenQuanYi
Micro
Hei
,
sans-serif
;
}
#app
{
#app
,
.login-panel
{
.el-checkbox
{
margin-right
:
20px
;
&
:hover
.el-checkbox__inner
{
...
...
@@ -22,11 +22,10 @@ body {
background-color
:
#c0322b
;
border-color
:
#c0322b
;
}
.el-checkbox__input.is-checked
+
.el-checkbox__label
{
.el-checkbox__input.is-checked
+
.el-checkbox__label
,
.el-checkbox__input.is-checked
+
.el-checkbox__label
{
color
:
rgba
(
0
,
0
,
0
,
0
.65
);
}
.el-checkbox__label
{
font-size
:
12px
;
font-weight
:
400
;
color
:
rgba
(
0
,
0
,
0
,
0
.45
);
}
...
...
src/components/common/CommonHeader.vue
View file @
036ad606
...
...
@@ -29,7 +29,7 @@
</ElMenu>
</div>
<div
class=
"flex items-center"
>
<span>
登录/注册
</span>
<span
@
click=
"handleLogin"
>
登录/注册
</span>
<div
class=
"flex items-center"
>
<img
src=
"@/assets/images/icon-phone_call.png"
/>
<span>
400-900-1786
</span>
...
...
@@ -39,6 +39,9 @@
</template>
<
script
lang=
"ts"
setup
>
import
type
{
HeaderMenuItem
}
from
'@/types/common'
;
import
{
useLoginModal
}
from
'@/components/login/login.ts'
;
// import { h } from 'vue';
// import { ElMessageBox } from 'element-plus';
const
props
=
withDefaults
(
defineProps
<
{
...
...
@@ -55,6 +58,12 @@ const getParentName = (menu: HeaderMenuItem) => {
return
current
?.
name
||
menu
.
name
;
};
const
handleLogin
=
()
=>
{
console
.
log
(
'xxx'
);
const
{
open
}
=
useLoginModal
();
open
();
};
const
handleMenuChange
=
()
=>
{};
</
script
>
<
style
scoped
>
...
...
src/components/filter/filter-view.vue
View file @
036ad606
<
template
>
<div
class=
"filter-view"
>
<div
class=
"
h-[108px] mb-1
overflow-hidden"
:class=
"
{ 'spread-view': isSpread }">
<div
class=
"
mb-1 h-[108px]
overflow-hidden"
:class=
"
{ 'spread-view': isSpread }">
<div
v-if=
"selected.length"
class=
"flex text-xs text-black/[.65]"
>
<span
class=
"w-[100px] shrink-0 leading-9 text-black/[.65]"
>
已选条件
</span>
<div
class=
"flex w-[701px] flex-wrap pt-1.5"
>
...
...
@@ -72,7 +72,7 @@
>
<
div
v
-
for
=
"(item, idx) in filter.list"
:
key
=
"idx"
>
<
div
class
=
"
cursor-pointer px-2 py-1 text-black/[.45] filter-item
"
class
=
"
filter-item cursor-pointer px-2 py-1 text-black/[.45]
"
:
class
=
"{ selected: filter.value === item.dictValue
}
"
@
click
=
"handleFilterClick(item, filter)"
>
...
...
@@ -83,11 +83,11 @@
<
/div
>
<
/div
>
<
div
class
=
"flex items-center ml-2.5 text-black/[.65] h-6 cursor-pointer"
v
-
if
=
"filter.isAddress && !filter.showAll"
class
=
"ml-2.5 flex h-6 cursor-pointer items-center text-black/[.65]"
@
click
=
"filter.showAll = true"
>
<
img
class
=
"
w-3 h-3 mr-0.5
"
src
=
"@/assets/images/icon-plus.png"
alt
=
""
/>
<
img
class
=
"
mr-0.5 h-3 w-3
"
src
=
"@/assets/images/icon-plus.png"
alt
=
""
/>
<
span
>
展开
<
/span
>
<
/div
>
<
div
v
-
if
=
"filter.plugins"
class
=
"ml-2 flex items-center"
>
...
...
@@ -111,10 +111,10 @@
<
/div
>
<
/div
>
<
/div
>
<
div
v
-
else
>
<
div
v
-
else
class
=
"text-xs"
>
<
ElCheckboxGroup
v
-
model
=
"filter.value"
>
<
ElCheckbox
v
-
for
=
"(item, idx) in filter.list"
:
key
=
"idx"
:
label
=
"item.dictLabel"
>
{{
item
.
dictLabel
}}
<
span
class
=
"text-xs"
>
{{
item
.
dictLabel
}}
<
/span
>
<
/ElCheckbox
>
<
/ElCheckboxGroup
>
<
/div
>
...
...
@@ -123,13 +123,13 @@
<
/template
>
<
/div
>
<
div
class
=
"flex
items-center cursor-pointer justify-center text-xs text-[#4d4d4d] leading-9
"
class
=
"flex
cursor-pointer items-center justify-center text-xs leading-9 text-[#4d4d4d]
"
@
click
=
"changeIsSpread"
>
<
span
>
{{
isSpread
?
'收起全部'
:
'展开全部'
}}
<
/span
>
<
img
:
class
=
"{ 'rotate-180': !isSpread
}
"
class
=
"
w-2 h-[5px] ml-1
"
class
=
"
ml-1 h-[5px] w-2
"
src
=
"@/assets/images/icon-arrow_top.png"
alt
=
""
/>
...
...
src/components/login/LoginView.vue
0 → 100644
View file @
036ad606
This diff is collapsed.
Click to expand it.
src/components/login/login.ts
0 → 100644
View file @
036ad606
import
{
h
}
from
'vue'
;
import
Login
from
'./LoginView.vue'
;
export
function
useLoginModal
()
{
const
open
=
()
=>
{
console
.
log
(
'open'
);
ElMessageBox
({
message
:
h
(
Login
,
{
onClose
:
()
=>
{
console
.
log
(
'close'
);
},
}),
showClose
:
true
,
showCancelButton
:
false
,
showConfirmButton
:
false
,
center
:
true
,
});
};
return
{
open
,
};
}
src/stores/filterEnum.ts
View file @
036ad606
...
...
@@ -20,8 +20,10 @@ export const filterStore = defineStore('filterEnum', () => {
'Content-Type'
:
'application/x-www-form-urlencoded'
,
},
});
const
data
=
await
getFilterList
({
code
:
queryStr
});
filterEnum
.
value
=
data
;
const
{
data
,
success
}
=
await
getFilterList
({
code
:
queryStr
});
if
(
success
)
{
filterEnum
.
value
=
data
;
}
return
filterEnum
.
value
;
}
catch
(
error
:
any
)
{
return
new
Error
(
error
);
...
...
src/types/api.ts
View file @
036ad606
...
...
@@ -21,4 +21,14 @@ export enum RequestUrl {
carrierDetail
=
'/lyy/api/carrier/v1.0/detail'
,
/** 筛选项查询 */
getFiltersList
=
'/lyy/api/sysDictData/listByCodes'
,
/** 发送短信 */
sendMessage
=
'/user/pc/v1.0/sendMsg'
,
/** 注册 */
sign
=
'/user/pc/v1.0/sign'
,
/** 手机号登录 */
loginByPhone
=
'/user/pc/v1.0/phoneLogin'
,
/** 账号密码登录 */
loginByAccount
=
'/user/pc/v1.0/login'
,
/** 修改密码 */
forget
=
'/user/pc/v1.0/forget'
,
}
vite.config.mts
View file @
036ad606
...
...
@@ -33,4 +33,14 @@ export default defineConfig({
'@': fileURLToPath(new URL('./src', import.meta.url)),
},
},
server: {
proxy: {
'/userAPI': {
target: 'http://test.user.liyeyun.com',
changeOrigin: true,
secure: false,
rewrite: (path) => path.replace(/^\/userAPI/, ''),
},
},
},
});
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment