设置的默认样式不生效???

来源:2-17 自定义组件(下)

_文欣_

2020-04-26 15:25:48

//自定义组件如下 :

<template >

  <p :style="{color:col} ">{{time}}</p>

</template>


<script>

  export default {

    data() {

      return {

        time:10

      }

    },

    mounted(){

      var vm = this;

    

      var t = setInterval(function(){

        vm.time--;

        if(vm.time == 0){

          vm.$emit("end");

          clearInterval(t);

        }

      },1000)

    },

    props:{

      col:{

        type: String,

        default: '#fff'

      }

    }

};

</script>


<style >


</style>


//页面  如下 :

<template>

  <div>

    <div>自定义组件</div>

    <count-down col="red" />

    <count-down col="blue" />

    <count-down col="" />

  </div>

</template>


<script>

import countDown from '@/components/countdown'

export default {

  data() {

    return {

      

    }

  },

  components:{

     countDown

  }

}

</script>


写回答

1回答

好帮手慕夭夭

2020-04-26

同学你好,这是因为给col传入了值,那么默认的值就不会生效了。代码中,没次调用子组件都传入了值。注意最后一个传入的是空字符串,也是符合的。所以默认值不会生效。

http://img.mukewang.com/climg/5ea548ef09fc492203960073.jpg

如果想要默认值生效,就把col去掉,不要传递值:

http://img.mukewang.com/climg/5ea54932098473e304670100.jpg

效果如下,因为默认值是白色字体,而页面也是白色的,所以看不到数字了;

http://img.mukewang.com/climg/5ea5494e09ddfed802430143.jpg

如果我的回答帮助到了你,欢迎采纳,祝学习愉快~

0

0 学习 · 10739 问题

查看课程