Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
X
x-learn
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
EzijingWeb
x-learn
Commits
00c84d7d
提交
00c84d7d
authored
12月 03, 2020
作者:
王鹏飞
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
搜索结果增加高亮
上级
016011b1
显示空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
41 行增加
和
17 行删除
+41
-17
courseList.vue
src/pages/search/components/courseList.vue
+17
-3
tagList.vue
src/pages/search/components/tagList.vue
+12
-5
videoList.vue
src/pages/search/components/videoList.vue
+12
-9
没有找到文件。
src/pages/search/components/courseList.vue
浏览文件 @
00c84d7d
<
template
>
<div
class=
"main-list"
element-loading-text=
"加载中..."
v-loading=
"!loaded"
>
<ul
v-if=
"list.length"
>
<li
v-for=
"item in list"
:key=
"item.course_id"
>
<router-link
:to=
"
{ name: 'courseLearnItem', params: { id: item.id } }">
{{
item
.
course_name
}}
</router-link>
<ul
v-if=
"currentList.length"
>
<li
v-for=
"item in currentList"
:key=
"item.course_id"
>
<router-link
:to=
"
{ name: 'courseLearnItem', params: { id: item.id } }">
<div
v-html=
"item.html"
></div>
</router-link>
</li>
</ul>
<template
v-else
>
...
...
@@ -40,6 +42,15 @@ export default {
}
}
},
computed
:
{
currentList
()
{
return
this
.
list
.
map
(
item
=>
{
const
keywords
=
this
.
requestParams
.
keywords
item
.
html
=
item
.
course_name
.
replaceAll
(
keywords
,
`<span class="highlight">
${
keywords
}
</span>`
)
return
item
})
}
},
methods
:
{
getList
()
{
this
.
loaded
=
false
...
...
@@ -72,4 +83,7 @@ export default {
text-decoration
:
underline
;
}
}
::v-deep
.highlight
{
color
:
#c01540
;
}
</
style
>
src/pages/search/components/tagList.vue
浏览文件 @
00c84d7d
<
template
>
<div
class=
"main-list"
element-loading-text=
"加载中..."
v-loading=
"!loaded"
>
<ul
v-if=
"
l
ist.length"
>
<li
v-for=
"item in
l
ist"
:key=
"item.id"
>
<ul
v-if=
"
currentL
ist.length"
>
<li
v-for=
"item in
currentL
ist"
:key=
"item.id"
>
<router-link
:to=
"
{ name: 'courseTagItem', params: { courseId: item.course_id, id: item.id } }">
{{
item
.
title
}}
<div
v-html=
"item.html"
></div>
</router-link>
</li>
</ul>
...
...
@@ -43,8 +43,12 @@ export default {
}
},
computed
:
{
isWeapp
()
{
return
this
.
$store
.
state
.
isWeapp
currentList
()
{
return
this
.
list
.
map
(
item
=>
{
const
keywords
=
this
.
requestParams
.
keywords
item
.
html
=
item
.
title
.
replaceAll
(
keywords
,
`<span class="highlight">
${
keywords
}
</span>`
)
return
item
})
}
},
methods
:
{
...
...
@@ -79,4 +83,7 @@ export default {
text-decoration
:
underline
;
}
}
::v-deep
.highlight
{
color
:
#c01540
;
}
</
style
>
src/pages/search/components/videoList.vue
浏览文件 @
00c84d7d
<
template
>
<div
class=
"main-list"
element-loading-text=
"加载中..."
v-loading=
"!loaded"
>
<template
v-if=
"
data
List.length"
>
<template
v-if=
"
current
List.length"
>
<ul>
<li
v-for=
"item in
data
List"
:key=
"item.id"
@
click=
"onClick(item)"
>
<li
v-for=
"item in
current
List"
:key=
"item.id"
@
click=
"onClick(item)"
>
<div
class=
"pic"
>
<img
:src=
"item.url"
/>
<div
class=
"cover"
></div>
</div>
<div
class=
"text"
>
{{
item
.
chapter_name
}}
</div>
<div
class=
"text"
v-html=
"item.html"
>
</div>
</li>
</ul>
</
template
>
...
...
@@ -47,12 +47,12 @@ export default {
}
},
computed
:
{
isWeapp
()
{
return
this
.
$store
.
state
.
isWeapp
},
// 过滤空视频
dataList
()
{
return
this
.
list
.
filter
(
item
=>
item
.
resource_id
!==
'6684350363920760832'
)
currentList
()
{
return
this
.
list
.
map
(
item
=>
{
const
keywords
=
this
.
requestParams
.
keywords
item
.
html
=
item
.
chapter_name
.
replaceAll
(
keywords
,
`<span class="highlight">
${
keywords
}
</span>`
)
return
item
}
)
}
},
methods
:
{
...
...
@@ -114,4 +114,7 @@ export default {
overflow
:
hidden
;
}
}
::v-deep
.highlight
{
color
:
#c01540
;
}
</
style
>
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论