Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
CFFP-HB
Overview
Overview
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Chao Sun
CFFP-HB
Commits
f0ef1f36
Commit
f0ef1f36
authored
Jul 11, 2025
by
Sweet Zhang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
首页产品列表
parent
4d3c1e29
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
254 additions
and
14 deletions
+254
-14
package-lock.json
+221
-0
package.json
+3
-0
pages/courselist/courselist.vue
+16
-2
pages/index/index.vue
+14
-12
No files found.
package-lock.json
View file @
f0ef1f36
...
...
@@ -13,6 +13,22 @@
"echarts"
:
"^5.4.1"
,
"js-sha256"
:
"^0.11.1"
,
"nanoid"
:
"^4.0.0"
},
"devDependencies"
:
{
"less"
:
"^4.3.0"
}
},
"node_modules/copy-anything"
:
{
"version"
:
"2.0.6"
,
"resolved"
:
"https://registry.npmmirror.com/copy-anything/-/copy-anything-2.0.6.tgz"
,
"integrity"
:
"sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"dependencies"
:
{
"is-what"
:
"^3.14.1"
},
"funding"
:
{
"url"
:
"https://github.com/sponsors/mesqueeb"
}
},
"node_modules/crypto-js"
:
{
...
...
@@ -46,11 +62,124 @@
"tslib"
:
"2.3.0"
}
},
"node_modules/errno"
:
{
"version"
:
"0.1.8"
,
"resolved"
:
"https://registry.npmmirror.com/errno/-/errno-0.1.8.tgz"
,
"integrity"
:
"sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"optional"
:
true
,
"dependencies"
:
{
"prr"
:
"~1.0.1"
},
"bin"
:
{
"errno"
:
"cli.js"
}
},
"node_modules/graceful-fs"
:
{
"version"
:
"4.2.11"
,
"resolved"
:
"https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.11.tgz"
,
"integrity"
:
"sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"optional"
:
true
},
"node_modules/iconv-lite"
:
{
"version"
:
"0.6.3"
,
"resolved"
:
"https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.6.3.tgz"
,
"integrity"
:
"sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"optional"
:
true
,
"dependencies"
:
{
"safer-buffer"
:
">= 2.1.2 < 3.0.0"
},
"engines"
:
{
"node"
:
">=0.10.0"
}
},
"node_modules/image-size"
:
{
"version"
:
"0.5.5"
,
"resolved"
:
"https://registry.npmmirror.com/image-size/-/image-size-0.5.5.tgz"
,
"integrity"
:
"sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"optional"
:
true
,
"bin"
:
{
"image-size"
:
"bin/image-size.js"
},
"engines"
:
{
"node"
:
">=0.10.0"
}
},
"node_modules/is-what"
:
{
"version"
:
"3.14.1"
,
"resolved"
:
"https://registry.npmmirror.com/is-what/-/is-what-3.14.1.tgz"
,
"integrity"
:
"sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA=="
,
"dev"
:
true
,
"license"
:
"MIT"
},
"node_modules/js-sha256"
:
{
"version"
:
"0.11.1"
,
"resolved"
:
"https://registry.npmmirror.com/js-sha256/-/js-sha256-0.11.1.tgz"
,
"integrity"
:
"sha512-o6WSo/LUvY2uC4j7mO50a2ms7E/EAdbP0swigLV+nzHKTTaYnaLIWJ02VdXrsJX0vGedDESQnLsOekr94ryfjg=="
},
"node_modules/less"
:
{
"version"
:
"4.3.0"
,
"resolved"
:
"https://registry.npmmirror.com/less/-/less-4.3.0.tgz"
,
"integrity"
:
"sha512-X9RyH9fvemArzfdP8Pi3irr7lor2Ok4rOttDXBhlwDg+wKQsXOXgHWduAJE1EsF7JJx0w0bcO6BC6tCKKYnXKA=="
,
"dev"
:
true
,
"license"
:
"Apache-2.0"
,
"dependencies"
:
{
"copy-anything"
:
"^2.0.1"
,
"parse-node-version"
:
"^1.0.1"
,
"tslib"
:
"^2.3.0"
},
"bin"
:
{
"lessc"
:
"bin/lessc"
},
"engines"
:
{
"node"
:
">=14"
},
"optionalDependencies"
:
{
"errno"
:
"^0.1.1"
,
"graceful-fs"
:
"^4.1.2"
,
"image-size"
:
"~0.5.0"
,
"make-dir"
:
"^2.1.0"
,
"mime"
:
"^1.4.1"
,
"needle"
:
"^3.1.0"
,
"source-map"
:
"~0.6.0"
}
},
"node_modules/make-dir"
:
{
"version"
:
"2.1.0"
,
"resolved"
:
"https://registry.npmmirror.com/make-dir/-/make-dir-2.1.0.tgz"
,
"integrity"
:
"sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"optional"
:
true
,
"dependencies"
:
{
"pify"
:
"^4.0.1"
,
"semver"
:
"^5.6.0"
},
"engines"
:
{
"node"
:
">=6"
}
},
"node_modules/mime"
:
{
"version"
:
"1.6.0"
,
"resolved"
:
"https://registry.npmmirror.com/mime/-/mime-1.6.0.tgz"
,
"integrity"
:
"sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"optional"
:
true
,
"bin"
:
{
"mime"
:
"cli.js"
},
"engines"
:
{
"node"
:
">=4"
}
},
"node_modules/nanoid"
:
{
"version"
:
"4.0.2"
,
"integrity"
:
"sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw=="
,
...
...
@@ -66,6 +195,98 @@
"engines"
:
{
"node"
:
"^14 || ^16 || >=18"
}
},
"node_modules/needle"
:
{
"version"
:
"3.3.1"
,
"resolved"
:
"https://registry.npmmirror.com/needle/-/needle-3.3.1.tgz"
,
"integrity"
:
"sha512-6k0YULvhpw+RoLNiQCRKOl09Rv1dPLr8hHnVjHqdolKwDrdNyk+Hmrthi4lIGPPz3r39dLx0hsF5s40sZ3Us4Q=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"optional"
:
true
,
"dependencies"
:
{
"iconv-lite"
:
"^0.6.3"
,
"sax"
:
"^1.2.4"
},
"bin"
:
{
"needle"
:
"bin/needle"
},
"engines"
:
{
"node"
:
">= 4.4.x"
}
},
"node_modules/parse-node-version"
:
{
"version"
:
"1.0.1"
,
"resolved"
:
"https://registry.npmmirror.com/parse-node-version/-/parse-node-version-1.0.1.tgz"
,
"integrity"
:
"sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"engines"
:
{
"node"
:
">= 0.10"
}
},
"node_modules/pify"
:
{
"version"
:
"4.0.1"
,
"resolved"
:
"https://registry.npmmirror.com/pify/-/pify-4.0.1.tgz"
,
"integrity"
:
"sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"optional"
:
true
,
"engines"
:
{
"node"
:
">=6"
}
},
"node_modules/prr"
:
{
"version"
:
"1.0.1"
,
"resolved"
:
"https://registry.npmmirror.com/prr/-/prr-1.0.1.tgz"
,
"integrity"
:
"sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"optional"
:
true
},
"node_modules/safer-buffer"
:
{
"version"
:
"2.1.2"
,
"resolved"
:
"https://registry.npmmirror.com/safer-buffer/-/safer-buffer-2.1.2.tgz"
,
"integrity"
:
"sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
,
"dev"
:
true
,
"license"
:
"MIT"
,
"optional"
:
true
},
"node_modules/sax"
:
{
"version"
:
"1.4.1"
,
"resolved"
:
"https://registry.npmmirror.com/sax/-/sax-1.4.1.tgz"
,
"integrity"
:
"sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"optional"
:
true
},
"node_modules/semver"
:
{
"version"
:
"5.7.2"
,
"resolved"
:
"https://registry.npmmirror.com/semver/-/semver-5.7.2.tgz"
,
"integrity"
:
"sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g=="
,
"dev"
:
true
,
"license"
:
"ISC"
,
"optional"
:
true
,
"bin"
:
{
"semver"
:
"bin/semver"
}
},
"node_modules/source-map"
:
{
"version"
:
"0.6.1"
,
"resolved"
:
"https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz"
,
"integrity"
:
"sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
,
"dev"
:
true
,
"license"
:
"BSD-3-Clause"
,
"optional"
:
true
,
"engines"
:
{
"node"
:
">=0.10.0"
}
},
"node_modules/tslib"
:
{
"version"
:
"2.8.1"
,
"resolved"
:
"https://registry.npmmirror.com/tslib/-/tslib-2.8.1.tgz"
,
"integrity"
:
"sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="
,
"dev"
:
true
,
"license"
:
"0BSD"
}
}
}
package.json
View file @
f0ef1f36
...
...
@@ -20,5 +20,8 @@
"
echarts
"
:
"^5.4.1"
,
"
js-sha256
"
:
"^0.11.1"
,
"
nanoid
"
:
"^4.0.0"
},
"devDependencies"
:
{
"
less
"
:
"^4.3.0"
}
}
pages/courselist/courselist.vue
View file @
f0ef1f36
<
template
>
<view
class=
"container"
>
<view
class=
"homeHeader"
>
<view
class=
"container"
:style=
"
{paddingTop: showFlag ? '0' : '60rpx'}"
>
<view
class=
"homeHeader"
v-if=
"showFlag"
>
<view
class=
"one"
>
<text
style=
"font-size: 80rpx;"
>
01
</text>
<view
class=
"titleTxt"
>
...
...
@@ -115,6 +115,12 @@
import
{
nanoid
}
from
'nanoid'
;
export
default
{
name
:
'courselist'
,
props
:{
showFlag
:{
type
:
Boolean
,
default
:
true
}
},
components
:{
courseItem
,
tabBar
,
...
...
@@ -155,6 +161,14 @@
}
},
created
(){
this
.
queryName
=
uni
.
getStorageSync
(
'queryName'
)
||
''
;
this
.
courseList
();
this
.
sourceType
=
uni
.
getStorageSync
(
'addSystemType'
)
||
'1'
;
if
(
uni
.
getStorageSync
(
'cffp_userInfo'
)){
this
.
userInfo
=
JSON
.
parse
(
uni
.
getStorageSync
(
'cffp_userInfo'
))
}
},
computed
:{
marginTop
(){
if
(
this
.
env
.
device
.
isMobile
){
...
...
pages/index/index.vue
View file @
f0ef1f36
...
...
@@ -56,27 +56,29 @@
</view>
-->
<!-- 产品区域 -->
<view
class=
"product
Box
"
>
<view
class=
"productTitle"
>
<view
class=
"product
Container
"
>
<!--
<view
class=
"productTitle"
>
<view
class=
"titleTxt"
>
<text
style=
"font-size: 30rpx;font-weight: 500;"
>
推荐产品
</text>
<text
class=
"more"
@
click=
"goToCourselist()"
>
更多
<text
class=
"iconfont icon-youjiantou"
></text>
</text>
</view>
</view>
</view>
-->
<view
class=
"productList"
v-if=
"cffpCourseInfos.length>0"
>
<courselist
:showFlag=
"false"
></courselist>
<view
class=
"productListBox"
>
<view
class=
"productListItem"
v-for=
"item in cffpCourseInfos"
:key=
"item.fileId"
@
click=
"goDetail(item)"
>
<view
class=
"top"
>
<!--
<view
class=
"productListItem"
v-for=
"item in cffpCourseInfos"
:key=
"item.fileId"
@
click=
"goDetail(item)"
>
-->
<!--
<view
class=
"top"
>
-->
<!--
<view
class=
"shareBtn"
@
click
.
stop=
"shareProduct"
>
-->
<!-- 分享按钮 -->
<!--
<text
class=
"iconfont icon-zhuanfa"
></text><text>
分享赚钱
</text>
</view>
-->
<image
class=
"productImg"
:src=
"item.displayImage"
alt=
""
mode=
"widthFix"
></image>
<
!--
<
image
class=
"productImg"
:src=
"item.displayImage"
alt=
""
mode=
"widthFix"
></image>
<view
class=
"productDesBox"
>
{{
item
.
fileSynopsis
}}
</view>
<
/view
>
<view
class=
"bottom"
style=
"text-align: left !important;"
>
</view>
-->
<
!--
</view>
--
>
<!--
<view
class=
"bottom"
style=
"text-align: left !important;"
>
<view
class=
"one"
>
{{
item
.
fileTitle
}}
</view>
...
...
@@ -84,8 +86,8 @@
<text
class=
"price"
style=
""
>
¥
{{
item
.
coursePrice
}}
</text>
<text
v-if=
"Number(item.salesNumber)>0"
class=
"num"
>
已售
{{
item
.
salesNumber
}}
</text>
</view>
</view>
<
/view
>
</view>
-->
<
!--
</view>
--
>
</view>
</view>
<view
class=
"productEmpty"
v-else
>
...
...
@@ -746,7 +748,7 @@
}
}
.product
Box
{
.product
Container
{
background-color
:
#fff
;
margin-top
:
15
rpx
;
box-sizing
:
border-box
;
...
...
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