关于mixins: [searchMixin]

关于mixins: [searchMixin]

<template>

  <div class="hot">

    <h4 class="hot-title">热门搜索</h4>

    <div class="loading-container" v-if="!hots.length">

      <me-loading/>

    </div>

    <ul class="hot-list" v-else>

      <li

        class="hot-item"

        v-for="(item, index) in hots"

        :key="index"

        @click="$_search_selectItem(item.hotWord)"

      >{{item.hotWord}}</li>

    </ul>

  </div>

</template>


<script>

  import MeLoading from 'base/loading';

  import {getSearchHotKeyword} from 'api/search';

  import {searchMixin} from 'assets/js/mixins';


  export default {

    name: 'SearchHot',

    components: {

      MeLoading

    },

    mixins: [searchMixin],//不太理解这里的意思,在export default {}里直接定义属性,也没能明白[searchMixin]

    // 他是如何起作用的

    created() {

      this.getHotKeyword().then(() => {

        this.$emit('loaded');

      });

    },

    data() {

      return {

        hots: []

      };

    },

    methods: {

      getHotKeyword() {

        return getSearchHotKeyword().then(data => {

          return new Promise(resolve => {

            if (data) {

              this.hots = data;

              console.log(this.hots);

              resolve();

            }

          });

        });

      }

    }

  };

</script>


<style lang="scss" scoped>

@import "~assets/scss/mixins";


  .hot {

    padding-left: 10px;

    background-color: #fff;

    border-bottom: 1px solid $border-color;

    margin-bottom: 10px;


    &-title {

      height: 34px;

      line-height: 34px;

      font-size: $font-size-l;

      font-weight: bold;

    }


    &-list {

      display: flex;

      flex-wrap: wrap;

    }


    &-item {

      padding: 8px;

      background-color: #f0f2f5;

      border-radius: 4px;

      margin: 0 10px 10px 0;

      color: #686868;

    }

  }


  .loading-container {

    padding: 10px 0;

  }

</style>



正在回答

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

1回答

同学你好,这是vue中的混入,官网中的解释:

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


记住这样使用就行,定义的混入对象会被混合中当前组件中使用。

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

问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

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