Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
小刘28
xz-uniapp
提交
084ab449
xz-uniapp
项目概览
小刘28
/
xz-uniapp
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
xz-uniapp
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
084ab449
编写于
7月 17, 2022
作者:
小刘28
💬
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat:添加vuex;
上级
7b3c65c1
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
71 addition
and
43 deletion
+71
-43
main.js
main.js
+5
-0
pages/index/index.vue
pages/index/index.vue
+20
-41
store/index.js
store/index.js
+44
-0
utils/xzCopy.js
utils/xzCopy.js
+2
-2
未找到文件。
main.js
浏览文件 @
084ab449
...
...
@@ -3,8 +3,13 @@ import App from './App'
// #ifndef VUE3
import
Vue
from
'
vue
'
Vue
.
config
.
productionTip
=
false
import
store
from
'
./store/index
'
;
Vue
.
prototype
.
$store
=
store
;
App
.
mpType
=
'
app
'
const
app
=
new
Vue
({
store
,
...
App
})
app
.
$mount
()
...
...
pages/index/index.vue
浏览文件 @
084ab449
<
template
>
<view
class=
"content"
>
<image
class=
"logo"
src=
"/static/logo.png"
></image>
<view
class=
"text-area"
>
<text
class=
"title"
@
click=
"choose()"
>
{{
title
}}
</text>
</view>
<view
class=
""
>
<button
type=
"default"
@
click=
"clickGetUser()"
>
获取用户信息
</button>
<button
type=
"default"
@
click=
"clickUpdateUser()"
>
更新用户信息
</button>
</view>
</
template
>
...
...
@@ -11,52 +15,27 @@
export
default
{
data
()
{
return
{
title
:
'
Hello
'
}
},
onShow
()
{
},
methods
:
{
choose
(){
uni
.
chooseFile
({
count
:
10
,
type
:
'
image
'
,
success
(
res
)
{
// tempFilePath可以作为img标签的src属性显示图片
const
tempFilePaths
=
res
.
tempFiles
console
.
log
(
tempFilePaths
);
}
})
clickGetUser
(){
console
.
log
(
this
.
$store
.
getters
.
getUser
);
},
clickUpdateUser
(){
let
obj
=
{
name
:
'
张三
'
,
sex
:
'
女
'
};
this
.
$store
.
commit
(
'
updateUser
'
,
obj
);
}
}
}
</
script
>
<
style
>
.content
{
display
:
flex
;
flex-direction
:
column
;
align-items
:
center
;
justify-content
:
center
;
}
.logo
{
height
:
200
rpx
;
width
:
200
rpx
;
margin-top
:
200
rpx
;
margin-left
:
auto
;
margin-right
:
auto
;
margin-bottom
:
50
rpx
;
}
.text-area
{
display
:
flex
;
justify-content
:
center
;
}
.title
{
font-size
:
36
rpx
;
color
:
#8f8f94
;
}
</
style
>
store/index.js
0 → 100644
浏览文件 @
084ab449
import
Vue
from
'
vue
'
;
import
Vuex
from
'
vuex
'
;
//vue的插件机制
Vue
.
use
(
Vuex
);
//Vuex.Store 构造器选项
const
store
=
new
Vuex
.
Store
({
state
:
{
//存放状态
user
:
uni
.
getStorageSync
(
'
user
'
)
||
{},
token
:
uni
.
getStorageSync
(
'
token
'
)
||
''
},
mutations
:{
M_updateUser
(
state
,
payload
){
let
obj
=
state
.
user
;
state
.
user
=
{...
obj
,...
payload
};
uni
.
setStorageSync
(
'
user
'
,
state
.
user
);
},
M_updateToken
(
state
,
payload
){
state
.
token
=
payload
;
uni
.
setStorageSync
(
'
token
'
,
state
.
token
);
}
},
actions
:{
A_updateUser
(
context
,
payload
){
context
.
commit
(
'
M_updateUser
'
,
payload
);
},
A_updateToken
(
context
,
payload
){
context
.
commit
(
'
M_updateToken
'
,
payload
);
}
},
getters
:{
getUser
(
state
){
return
state
.
user
;
},
getToken
(
state
){
return
state
.
token
;
}
},
modules
:{
}
});
export
default
store
;
utils/xzCopy.js
浏览文件 @
084ab449
...
...
@@ -16,10 +16,10 @@ export default {
deepClone
(
obj
)
{
//判断拷贝的obj是对象还是数组
let
objClone
=
Array
.
isArray
(
obj
)
?
[]
:
{};
if
(
obj
&&
typeof
obj
===
"
object
"
)
{
//obj不能为空,并且是对象或者是数组 因为null也是object
if
(
obj
&&
typeof
obj
===
'
object
'
)
{
//obj不能为空,并且是对象或者是数组 因为null也是object
for
(
key
in
obj
)
{
if
(
obj
.
hasOwnProperty
(
key
))
{
if
(
obj
[
key
]
&&
typeof
obj
[
key
]
===
"
object
"
)
{
//obj里面属性值不为空并且还是对象,进行深度拷贝
if
(
obj
[
key
]
&&
typeof
obj
[
key
]
===
'
object
'
)
{
//obj里面属性值不为空并且还是对象,进行深度拷贝
objClone
[
key
]
=
deepClone
(
obj
[
key
]);
//递归进行深度的拷贝
}
else
{
objClone
[
key
]
=
obj
[
key
];
//直接拷贝
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录