Skip to content

FixedNav 悬浮导航

介绍

悬浮收起体验交互,用于快捷导航。

基础用法

html
<template>
  <nut-fixed-nav
    v-model:visible="visible"
    :nav-list="list"
    :position="{ top: '70px' }"
  ></nut-fixed-nav>
</template>
ts
const visible = ref(false);

const list = ref([
  {
    id: 1,
    text: "首页",
    icon: "https://img11.360buyimg.com/imagetools/jfs/t1/117646/2/11112/1297/5ef83e95E81d77f05/daf8e3b1c81e3c98.png"
  },
  {
    id: 2,
    text: "分类",
    icon: "https://img12.360buyimg.com/imagetools/jfs/t1/119490/8/9568/1798/5ef83e95E968c69a6/dd029326f7d5042e.png"
  },
  {
    id: 3,
    text: "购物车",
    num: 2,
    icon: "https://img14.360buyimg.com/imagetools/jfs/t1/130725/4/3157/1704/5ef83e95Eb976644f/b36c6cfc1cc1a99d.png"
  },
  {
    id: 4,
    text: "我的",
    icon: "https://img12.360buyimg.com/imagetools/jfs/t1/147573/29/1603/1721/5ef83e94E1393a678/5ddf1695ec989373.png"
  }
]);

左侧效果

html
<template>
  <nut-fixed-nav
    v-model:visible="visible"
    :nav-list="list"
    type="left"
    :position="{ top: '140px' }"
  ></nut-fixed-nav>
</template>

取消背景遮罩

html
<template>
  <nut-fixed-nav
    v-model:visible="visible"
    :nav-list="list"
    :position="{ top: '210px' }"
    :overlay="false"
  ></nut-fixed-nav>
</template>

配合 Drag 支持拖拽,小程序暂不支持

html
<template>
  <nut-drag :custom-style="{ right: 0, bottom: '240px' }" direction="y">
    <nut-fixed-nav
      v-model:visible="visible"
      :nav-list="list"
      un-active-text="支持拖拽"
    ></nut-fixed-nav>
  </nut-drag>
</template>

自定义使用

html
<template>
  <nut-fixed-nav v-model:visible="visible" type="left" :position="{ top: '280px' }">
    <template #list>
      <view class="flex flex-col">
        <text>1</text>
        <text>2</text>
        <text>3</text>
        <text>4</text>
        <text>5</text>
      </view>
    </template>

    <template #btn>
      <nut-icon name="retweet" color="#ffffff"></nut-icon>
      <text>{{ visible ? "自定义开" : "自定义关" }}</text>
    </template>
  </nut-fixed-nav>
</template>

API

Props

参数说明类型可选值默认值
visible是否打开boolean-false
nav-list悬浮列表内容数据Array-[]
active-color选中按钮文案颜色,默认集成主题色string-#fa2c19
active-text收起列表按钮文案string-收起导航
un-active-text展开列表按钮文案string-快速导航
type导航方向stringleft / rightright
overlay展开时是否显示遮罩boolean-true
positionfixed 垂直位置object-{ top: 'auto', bottom: 'auto' }

Events

事件名说明类型
selected选择之后触发(evt: { item: any, event: Event }) => void

Slots

名称说明
btn自定义按钮
list自定义展开列表内容

主题定制

样式变量

组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考 ConfigProvider 组件

名称默认值
--nut-fixednav-bg-colorvar(--nut-white)
--nut-fixednav-font-colorvar(--nut-black)
--nut-fixednav-index201
--nut-fixednav-btn-bglinear-gradient(135deg, var(--nut-primary-color) 0%, var(--nut-primary-color-end) 100%)
--nut-fixednav-item-active-colorvar(--nut-primary-color)

MIT Licensed