老师 关于slot的问题

老师 关于slot的问题

组件页

<template>

<div>

<div class="courseList">

<ul>

<li v-for="item in courseList">

<img :src="item.img">

<div class="content">

<span class="title">{{item.title}}</span>

<span class="desc">

<slot name="descTxt" class="descTxt">{{item.descTxt}}</slot>

{{item.desc}}

</span>

</div>

</li>

</ul>

</div>

</div>

</template>

<script>

export default {

props: {

courseList: Array

}

};

</script>

<style>

.courseList {

width: 100%;

display: flex;

flex-direction: column;

align-items: center;

}

.courseList li {

margin: 24px 20px;

width: 335px;

display: flex;

flex-direction: row;

}

.courseList li img {

width: 108px;

height: 72px;

border-radius: 3px;

}

.courseList li .content {

margin-left: 16px;

display: flex;

flex-direction: column;

}

.courseList li .content .title {

margin-top: 3px;

font-family: PingFangSC-Regular;

font-size: 15px;

color: #2b333b;

letter-spacing: 0;

line-height: 17px;

}

.courseList li .content .desc {

margin-top: 8px;

font-family: PingFangSC-Light;

font-size: 12px;

color: #71777d;

line-height: 14px;

}

.courseList li .content .descTxt {

font-family: PingFangSC-Light;

font-size: 12px;

color: #20cc85;

line-height: 14px;

}

</style>

 

调用页

<template>

<div>

<v-head></v-head>

<div class="courseTitle">

<ul>

<li v-for="item in arrList">

<img :src="item.imgUrl">

<span>{{item.txt}}</span>

</li>

</ul>

</div>

<v-course :courseList="courseList">

<div>

<span slot="descTxt"></span>

</div>

</v-course>

</div>

</template>

<script>

import homeHead from "@/components/head";

import courseTemp from "@/components/courseList";

import web from "@/assets/web.png";

import webService from "@/assets/webService.png";

import mobile from "@/assets/mobile.png";

import database from "@/assets/database.png";

import cloudData from "@/assets/cloudData.png";

import courseUrl1 from "@/assets/course/course1.jpg";

import courseUrl2 from "@/assets/course/course2.jpg";

import courseUrl3 from "@/assets/course/course3.jpg";

import courseUrl4 from "@/assets/course/course4.jpg";

import courseUrl5 from "@/assets/course/course5.jpg";

export default {

data() {

return {

arrList: [],

courseList: []

};

},

mounted() {

this.arrList = [

{

imgUrl: web,

txt: "前端开发"

},

{

imgUrl: webService,

txt: "后端开发"

},

{

imgUrl: mobile,

txt: "移动开发"

},

{

imgUrl: database,

txt: "数据库"

},

{

imgUrl: cloudData,

txt: "云计算"

}

];

this.courseList = [

{

img: courseUrl1,

title: "实例妙解Sed和Awk的秘密",

desc: "中级 · 330人在学 "

},

{

img: courseUrl2,

title: "Java定时任务调度工具详解之Quartz篇",

desc: "中级 · 330人在学 ",

descTxt: "已学98%"

},

{

img: courseUrl3,

title: "星级评分原理与实战",

desc: "中级 · 330人在学 "

},

{

img: courseUrl4,

title: "实例妙解Sed和Awk的秘密",

desc: "中级 · 330人在学 "

},

{

img: courseUrl5,

title: "PHP消息队列实践",

desc: "中级 · 330人在学 "

},

{

img: courseUrl1,

title: "Java定时任务调度工具详解之Quartz篇",

desc: "中级 · 330人在学 "

}

];

},

components: {

"v-head": homeHead,

"v-course": courseTemp

}

};

</script>

<style>

.courseTitle {

margin-top: 44px;

background: #f3f5f7;

padding: 20px 0;

overflow-x: scroll;

}

.courseTitle ul {

display: flex;

flex-direction: row;

}

.courseTitle ul li {

display: flex;

flex-direction: column;

align-items: center;

}

.courseTitle ul li img {

height: 32px;

width: 32px;

}

.courseTitle ul li span {

width: 85px;

text-align: center;

font-size: 14px;

color: #2b333b;

margin-top: 12px;

}

</style>


http://img1.sycdn.imooc.com//climg/5c4980e6000192dc04050141.jpg

这里不能调整slot的css  怎么解决呢老师?这里应该用slot吗? slot会在页面中增加节点吗老师?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

3回答
好帮手慕糖 2019-01-25 13:36:08

你好,课程中这里不是使用的插槽哦,课中这里也有讲解,也可以看下课程。可以直接使用标题。

祝学习愉快!

好帮手慕糖 2019-01-25 10:30:08

同学你好,slot插入的是内容,不能单说一个节点可以参考下图理解。

被调用的页面,

http://img1.sycdn.imooc.com//climg/5c4a740200019d8108900176.jpg

调用的页面:

http://img1.sycdn.imooc.com//climg/5c4a74270001066a07310158.jpg

最后显示的结构:

http://img1.sycdn.imooc.com//climg/5c4a74650001a11707900161.jpg

代码如果要设置样式,可以直接给span设置,不需要给插槽设置。slot中的类名也可以去掉。直接给span进行设置。

希望能帮助到你,祝学习愉快!

  • 提问者 Beckybei #1
    不能单独给slot设置clas吗 设计图里不是有个要是绿色的图吗 用标签直接实现吗
    2019-01-25 13:00:02
好帮手慕糖 2019-01-24 19:18:30

同学你好,由于使用的名称等与课程中不一致,无法进行测试,这个部分的布局,课程中是有讲的哦,同学可以看下课程中的。若还有其他问题,可以把全部的代码粘贴过来,便于准确的定位与解决问题。

祝学习愉快!

  • 提问者 Beckybei #1
    老师 那我这样子问吧 vue的slot插糟是增加一个节点吗 还是只是增加这个slot插槽里面的内容
    2019-01-25 09:15:41
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星

相似问题

登录后可查看更多问答,登录/注册

热门框架Vue开发WebApp 18版
  • 参与学习           人
  • 提交作业       209    份
  • 解答问题       3299    个

本路径是通过ES6基础知识、运用Zepto、Swiper、fullPag等移动端常用工具包、以及当下流行框架Vue,结合多个实战案例,还原真实开发场景,最终实现手机端购物商城网页开发。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师