Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
湖
湖南口味王-520猜数游戏-20250409
Project
Project
Details
Activity
Releases
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
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
SparkProjects
湖南口味王-520猜数游戏-20250409
Commits
941ca3c7
Commit
941ca3c7
authored
Apr 11, 2025
by
韦燕
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat:merge
parent
a51c8502
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
85 additions
and
86 deletions
+85
-86
index.html
dist/index.html
+0
-19
project.settings.json
project.settings.json
+0
-4
gamePage.jsx
src/pages/gamePage/gamePage.jsx
+85
-63
No files found.
dist/index.html
deleted
100644 → 0
View file @
a51c8502
<!doctype html>
<html
lang=
"zh"
><head><meta
charset=
"utf-8"
><meta
name=
"viewport"
content=
"width=device-width,initial-scale=1,shrink-to-fit=no"
><meta
name=
"theme-color"
content=
"#000000"
><link
rel=
"dns-prefetch"
href=
"//yun.duiba.com.cn"
/><link
rel=
"preconnect"
href=
"//embedlog.duiba.com.cn"
><title>
活动标题
</title><script>
if
(
localStorage
&&
localStorage
.
isWebp
)
{
document
.
getElementsByTagName
(
'html'
)[
0
]
.
setAttribute
(
'duiba-webp'
,
'true'
);
}
</script><script
src=
"//yun.duiba.com.cn/spark/v2/spark.base.fz.wxpollyfill.js"
></script><script
src=
"//yun.duiba.com.cn/js-libs/rem/1.1.3/rem.min.js"
></script><script
src=
"//yun.duiba.com.cn/h5/lib/zepto.min.js"
></script><script>
"use strict"
;
var
CFG
=
CFG
||
{};
CFG
.
projectId
=
location
.
pathname
.
split
(
'/'
)[
2
]
||
'1'
;
function
getUrlParam
(
name
)
{
var
search
=
window
.
location
.
search
;
var
matched
=
search
.
slice
(
1
).
match
(
new
RegExp
(
'(^|&)'
+
name
+
'=([^&]*)(&|$)'
,
'i'
));
return
search
.
length
?
matched
&&
matched
[
2
]
:
null
;
}
CFG
.
appID
=
'${APPID}'
;
if
(
!
getUrlParam
(
"appID"
))
{
// alert("【警告】检测到活动url中没有appID参数\n缺少该参数会导致埋点、分享、app信息获取错误。")
}
</script><link
href=
"//yun.duiba.com.cn/spark/v2/temp_base/1744368490950/styles/main.312a2794e93e96ea98cd.css"
rel=
"stylesheet"
></head><body><noscript>
You need to enable JavaScript to run this app.
</noscript><div
id=
"root"
></div><script>
"use strict"
;
CFG
.
___G___
=
'master%3Borigin%09git%40gitlab2.dui88.com%3Asparkprojects%2FKWW-520NumberGuessingGame-20250409.git%20(fetch)%3Borigin%09git%40gitlab2.dui88.com%3Asparkprojects%2FKWW-520NumberGuessingGame-20250409.git%20(push)%3Bweiyan%3B'
;
</script><script
src=
"//yun.duiba.com.cn/spark/v2/temp_base/1744368490950/js/runtime-main.056eba21.js"
crossorigin=
"anonymous"
></script><script
src=
"//yun.duiba.com.cn/spark/v2/temp_base/1744368490950/js/vendors.8c139ea6.js"
crossorigin=
"anonymous"
></script><script
src=
"//yun.duiba.com.cn/spark/v2/temp_base/1744368490950/js/main.ed787662.js"
crossorigin=
"anonymous"
></script></body></html>
\ No newline at end of file
project.settings.json
View file @
941ca3c7
<<<<<<<
HEAD
{
"proSetting"
:{
"projectxIDs"
:{
"testId"
:[{
"label"
:
"test"
,
"value"
:
"pae1f48ca"
}],
"prodId"
:[]},
"skinVariables"
:[],
"mockSetting"
:{
"projectId"
:
""
,
"pageId"
:
""
}},
"envSetting"
:{},
"psdSetting"
:{
"psdFSSetting"
:
true
,
"psdCenterSetting"
:
true
}}
{
"proSetting"
:{
"projectxIDs"
:{
"testId"
:[{
"label"
:
"test"
,
"value"
:
"pae1f48ca"
}],
"prodId"
:[]},
"skinVariables"
:[],
"mockSetting"
:{
"projectId"
:
""
,
"pageId"
:
""
}},
"envSetting"
:{},
"psdSetting"
:{
"psdFSSetting"
:
true
,
"psdCenterSetting"
:
true
}}
=======
{
"proSetting"
:{
"projectxIDs"
:{
"testId"
:[{
"label"
:
"/test"
,
"value"
:
"pae1f48ca"
}],
"prodId"
:[]},
"skinVariables"
:[],
"mockSetting"
:{
"projectId"
:
""
,
"pageId"
:
""
}},
"envSetting"
:{},
"psdSetting"
:{
"psdFSSetting"
:
true
,
"psdCenterSetting"
:
true
}}
>>>>>>>
1
d
3
ca
4155556
fe
453
d
55
d
85
d
7
c
8
ab
4
d
7706
f
38
ef
src/pages/gamePage/gamePage.jsx
View file @
941ca3c7
...
@@ -171,7 +171,7 @@ class GamePage extends Component {
...
@@ -171,7 +171,7 @@ class GamePage extends Component {
break
;
break
;
case
'minus'
:
case
'minus'
:
// const _max = Math.floor(currentNum / 2);
// const _max = Math.floor(currentNum / 2);
number
=
this
.
createSpecialNum
(
this
.
min
,
Math
.
min
(
this
.
max
,
currentNum
));
number
=
this
.
createSpecialNum
(
this
.
min
,
Math
.
min
(
this
.
max
,
this
.
currentNumber
));
break
;
break
;
case
'multiplyZheng'
:
case
'multiplyZheng'
:
number
=
this
.
createSpecialNum
(
1
,
9
);
number
=
this
.
createSpecialNum
(
1
,
9
);
...
@@ -189,24 +189,7 @@ class GamePage extends Component {
...
@@ -189,24 +189,7 @@ class GamePage extends Component {
fen2
=
this
.
createSpecialNum
(
1
,
Math
.
max
(
1
,
fen1
-
1
));
fen2
=
this
.
createSpecialNum
(
1
,
Math
.
max
(
1
,
fen1
-
1
));
}
}
number
=
fen2
/
fen1
;
number
=
Math
.
round
(
fen2
/
fen1
);
// if(this.currentOpt == 'plus') {
// fen1 = this.createSpecialNum(2, 8);
// if(fen1 == 8) {
// fen2 = 9
// } else {
// const fenMin = Math.min(8, fen1 + 1);
// const fenMax = 9;
// fen2 = this.createSpecialNum(fenMin , fenMax);
// }
// number = fen2 / fen1;
// } else {
// fen1 = this.createSpecialNum(2, 9);
// fen2 = this.createSpecialNum(1, Math.max(1, fen1 - 1));
// number = fen2 / fen1;
// }
break
;
break
;
case
'percent'
:
case
'percent'
:
number
=
this
.
createSpecialNum
(
1
,
100
);
number
=
this
.
createSpecialNum
(
1
,
100
);
...
@@ -214,22 +197,11 @@ class GamePage extends Component {
...
@@ -214,22 +197,11 @@ class GamePage extends Component {
case
'division'
:
case
'division'
:
number
=
2
;
number
=
2
;
break
;
break
;
// case 'multiplyFen':
// fen1 = this.createSpecialNum(2, 9);
// fen2 = this.createSpecialNum(1, Math.max(1, fen1_m - 1));
// number = fen2 / fen1;
// break;
case
'minusDouble'
:
case
'minusDouble'
:
// const _maxD = Math.floor(currentNum / 4);
number
=
this
.
createSpecialNum
(
0
,
Math
.
min
(
99
,
Math
.
floor
(
this
.
currentNumber
/
2
)));
// number = this.createSpecialNum(0, _maxD);
number
=
this
.
createSpecialNum
(
0
,
Math
.
min
(
99
,
Math
.
floor
(
currentNum
/
2
)));
break
;
break
;
}
}
// console.error(number);
return
{
return
{
number
,
number
,
fen1
,
fen1
,
...
@@ -262,7 +234,7 @@ class GamePage extends Component {
...
@@ -262,7 +234,7 @@ class GamePage extends Component {
newNumber1
+=
symbolInfo
?.
number
*
newNumber1
newNumber1
+=
symbolInfo
?.
number
*
newNumber1
break
;
break
;
case
'multiplyFen'
:
case
'multiplyFen'
:
newNumber1
+=
Math
.
round
(
symbolInfo
?.
fen2
/
symbolInfo
?.
fen1
*
newNumber
1
)
*
operate
;
newNumber1
+=
Math
.
round
(
symbolInfo
?.
fen2
*
newNumber1
/
symbolInfo
?.
fen
1
)
*
operate
;
break
;
break
;
case
'percent'
:
case
'percent'
:
newNumber1
+=
Math
.
round
(
symbolInfo
?.
number
*
newNumber1
/
100
)
*
operate
;
newNumber1
+=
Math
.
round
(
symbolInfo
?.
number
*
newNumber1
/
100
)
*
operate
;
...
@@ -292,7 +264,7 @@ class GamePage extends Component {
...
@@ -292,7 +264,7 @@ class GamePage extends Component {
let
newNumber
=
this
.
currentNumber
;
let
newNumber
=
this
.
currentNumber
;
//
const symbolInfo = index == -1 ? symbolInfo1 : symbolInfo2;
const
symbolInfo
=
index
==
-
1
?
symbolInfo1
:
symbolInfo2
;
const
operate
=
addition
==
'plus'
?
1
:
-
1
;
const
operate
=
addition
==
'plus'
?
1
:
-
1
;
...
@@ -314,10 +286,11 @@ class GamePage extends Component {
...
@@ -314,10 +286,11 @@ class GamePage extends Component {
setTimeout
(()
=>
{
setTimeout
(()
=>
{
this
.
createAddition
();
this
.
createAddition
();
this
.
canChoose
=
true
this
.
setState
({
this
.
setState
({
selectIndex
:
0
,
selectIndex
:
0
,
})
})
this
.
canChoose
=
true
},
500
)
},
500
)
return
return
...
@@ -333,11 +306,13 @@ class GamePage extends Component {
...
@@ -333,11 +306,13 @@ class GamePage extends Component {
if
(
this
.
currentOpt
==
'plus'
&&
this
.
currentNumber
>
0
)
{
if
(
this
.
currentOpt
==
'plus'
&&
this
.
currentNumber
>
0
)
{
this
.
divNum
++
;
this
.
divNum
++
;
}
}
if
(
this
.
currentOpt
==
'minus'
&&
this
.
divNum
>
1
)
{
if
(
this
.
currentOpt
==
'minus'
&&
this
.
divNum
>
1
&&
this
.
currentNumber
!=
this
.
state
.
currentNum
)
{
this
.
divNum
--
;
this
.
divNum
--
;
}
}
this
.
createNewElement
();
console
.
error
(
"divNum"
,
this
.
divNum
)
// this.createNewElement();
this
.
updateNumElementsByOpt
(
this
.
currentOpt
);
// console.warn("newNumber", this.currentNumber)
// console.warn("newNumber", this.currentNumber)
...
@@ -352,9 +327,13 @@ class GamePage extends Component {
...
@@ -352,9 +327,13 @@ class GamePage extends Component {
this
.
setState
({
this
.
setState
({
selectIndex
:
0
,
selectIndex
:
0
,
})
})
},
500
)
},
500
)
}
}
currentArr
=
[{
top
:
'3.71rem'
}]
lastTop
=
3.71
;
lastTop
=
3.71
;
divNum
=
0
;
divNum
=
0
;
// 创建新的元素进行叠加
// 创建新的元素进行叠加
...
@@ -363,13 +342,13 @@ class GamePage extends Component {
...
@@ -363,13 +342,13 @@ class GamePage extends Component {
// const { numElements, currentNumber } = this.state;
// const { numElements, currentNumber } = this.state;
const
{
numElements
,
currentNumber
}
=
this
.
state
;
const
{
numElements
,
currentNumber
}
=
this
.
state
;
let
newArr
=
[...
numElements
]
;
let
newArr
=
this
.
currentArr
;
if
(
this
.
currentOpt
==
'minus'
&&
this
.
divNum
>
1
)
{
if
(
this
.
currentOpt
==
'minus'
&&
this
.
currentArr
.
length
>
1
)
{
this
.
divNum
--
;
this
.
divNum
--
;
newArr
=
newArr
.
slice
(
0
,
newArr
.
length
-
1
);
newArr
=
newArr
.
slice
(
0
,
newArr
.
length
-
1
);
console
.
warn
(
"numElements"
,
newArr
,
newArr
.
length
-
1
)
this
.
setState
({
this
.
setState
({
numElements
:
newArr
numElements
:
newArr
})
})
...
@@ -379,37 +358,80 @@ class GamePage extends Component {
...
@@ -379,37 +358,80 @@ class GamePage extends Component {
const
lastTop
=
newArr
.
length
>
0
?
parseFloat
(
newArr
[
newArr
.
length
-
1
].
top
)
:
3.71
;
const
lastTop
=
newArr
.
length
>
0
?
parseFloat
(
newArr
[
newArr
.
length
-
1
].
top
)
:
3.71
;
const
newTop
=
3.71
-
0.05
*
this
.
divNum
;
const
newTop
=
3.71
-
0.05
*
this
.
divNum
;
console
.
warn
(
"numElements"
,
newArr
,
newArr
.
length
-
1
)
console
.
warn
(
"numElements"
,
newArr
,
newArr
.
length
-
1
,
this
.
divNum
)
console
.
warn
(
"lastTop"
,
lastTop
,
"newTop"
,
newTop
)
console
.
warn
(
"lastTop"
,
lastTop
,
"newTop"
,
newTop
)
// 创建一个新的 ref 来存储新元素
// 创建一个新的 ref 来存储新元素
const
newElementRef
=
React
.
createRef
();
const
newElementRef
=
React
.
createRef
();
this
.
setState
(
prevState
=>
{
this
.
setState
({
return
{
numElements
:
[
numElements
:
[
...
numElements
,
...
newArr
,
{
{
top
:
`
${
newTop
}
rem`
,
// 初始位置为上一个元素的 top 位置
top
:
`
${
this
.
lastTop
}
rem`
,
// 初始位置为上一个元素的 top 位置
number
:
this
.
currentNumber
,
number
:
this
.
currentNumber
,
ref
:
newElementRef
// 存储 ref
ref
:
newElementRef
// 存储 ref
}
}
]
]
}
},
()
=>
{
},
()
=>
{
// 在 setState 回调中执行动画
this
.
currentArr
=
this
.
state
.
numElements
;
const
element
=
newElementRef
.
current
;
})
if
(
element
)
{
// 设置过渡效果
// this.setState(prevState => {
element
.
style
.
transition
=
'top 0.1s ease-in-out'
;
// return {
// 延迟一小段时间以确保过渡效果生效
// numElements: [
setTimeout
(()
=>
{
// ...prevState.numElements,
element
.
style
.
top
=
`
${
newTop
}
rem`
;
// 移动到新的 top 位置
// {
this
.
lastTop
=
newTop
;
// top: `${newTop}rem`, // 初始位置为上一个元素的 top 位置
},
10
);
// number: this.currentNumber,
}
// ref: newElementRef // 存储 ref
// }
// ]
// }
// })
// , () => {
// // 在 setState 回调中执行动画
// this.currentArr = this.state.numElements;
// const element = newElementRef.current;
// if (element) {
// // 设置过渡效果
// element.style.transition = 'top 0.1s ease-in-out';
// // 延迟一小段时间以确保过渡效果生效
// setTimeout(() => {
// element.style.top = `${newTop}rem`; // 移动到新的 top 位置
// this.lastTop = newTop;
// }, 10);
// }
// });
}
updateNumElementsByOpt
=
(
opt
)
=>
{
let
{
numElements
}
=
this
.
state
;
if
(
opt
===
'minus'
&&
this
.
currentArr
.
length
>
1
&&
this
.
currentNumber
!=
this
.
state
.
currentNum
)
{
// 如果是 minus 类型且数组长度大于 1,则减少一个元素
numElements
=
numElements
.
slice
(
0
,
this
.
currentArr
.
length
-
1
);
// this.divNum--;
}
else
if
(
opt
===
'plus'
&&
this
.
currentNumber
>
0
){
// 否则增加一个元素
// const lastTop = numElements.length > 0 ? parseFloat(numElements[numElements.length - 1].top) : 3.71;
const
newTop
=
3.71
-
0.1
*
this
.
currentArr
.
length
;
console
.
warn
(
"newTop"
,
newTop
)
const
newElementRef
=
React
.
createRef
();
numElements
=
[
...
numElements
,
{
top
:
`
${
newTop
}
rem`
,
number
:
this
.
currentNumber
,
ref
:
newElementRef
}
];
// this.divNum++;
}
this
.
setState
({
numElements
},
()
=>
{
this
.
currentArr
=
this
.
state
.
numElements
;
});
});
}
}
...
...
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