|
@@ -18,8 +18,8 @@
|
|
|
<slot v-if="showLeftButton && leftButton" name="left">
|
|
<slot v-if="showLeftButton && leftButton" name="left">
|
|
|
<IconButton
|
|
<IconButton
|
|
|
:icon="getButton(leftButton)"
|
|
:icon="getButton(leftButton)"
|
|
|
- v-bind="iconProps"
|
|
|
|
|
shape="square-full"
|
|
shape="square-full"
|
|
|
|
|
+ v-bind="leftButtonProps"
|
|
|
@click="handleButtonNavBack(leftButton, () => emit('leftButtonPressed'))"
|
|
@click="handleButtonNavBack(leftButton, () => emit('leftButtonPressed'))"
|
|
|
/>
|
|
/>
|
|
|
</slot>
|
|
</slot>
|
|
@@ -63,7 +63,7 @@
|
|
|
<slot v-if="showRightButton && rightButton" name="right">
|
|
<slot v-if="showRightButton && rightButton" name="right">
|
|
|
<IconButton
|
|
<IconButton
|
|
|
:icon="getButton(rightButton)"
|
|
:icon="getButton(rightButton)"
|
|
|
- v-bind="iconProps"
|
|
|
|
|
|
|
+ v-bind="rightButtonProps"
|
|
|
shape="square-full"
|
|
shape="square-full"
|
|
|
@click="handleButtonNavBack(rightButton, () => emit('rightButtonPressed'))"
|
|
@click="handleButtonNavBack(rightButton, () => emit('rightButtonPressed'))"
|
|
|
/>
|
|
/>
|
|
@@ -79,7 +79,7 @@ import { propGetThemeVar, useTheme } from '../theme/ThemeDefine';
|
|
|
import { DynamicSize } from '../theme/ThemeTools';
|
|
import { DynamicSize } from '../theme/ThemeTools';
|
|
|
import HorizontalScrollText from '../typography/HorizontalScrollText.vue';
|
|
import HorizontalScrollText from '../typography/HorizontalScrollText.vue';
|
|
|
import Text from '../basic/Text.vue';
|
|
import Text from '../basic/Text.vue';
|
|
|
-import IconButton from '../basic/IconButton.vue';
|
|
|
|
|
|
|
+import IconButton, { type IconButtonProps } from '../basic/IconButton.vue';
|
|
|
import { isTopLevelPage } from '../utils/PageAction';
|
|
import { isTopLevelPage } from '../utils/PageAction';
|
|
|
|
|
|
|
|
export type NavBarButtonTypes = 'back'|'menu'|'search'|'setting'|'custom';
|
|
export type NavBarButtonTypes = 'back'|'menu'|'search'|'setting'|'custom';
|
|
@@ -101,6 +101,8 @@ export interface NavBarProps {
|
|
|
* @default ''
|
|
* @default ''
|
|
|
*/
|
|
*/
|
|
|
leftButton?: NavBarButtonTypes|string,
|
|
leftButton?: NavBarButtonTypes|string,
|
|
|
|
|
+ /** 左侧按钮透传样式 */
|
|
|
|
|
+ leftButtonProps?: IconButtonProps;
|
|
|
/**
|
|
/**
|
|
|
* 标题文字,支持自定义元素
|
|
* 标题文字,支持自定义元素
|
|
|
*/
|
|
*/
|
|
@@ -114,6 +116,8 @@ export interface NavBarProps {
|
|
|
* 右侧按钮
|
|
* 右侧按钮
|
|
|
*/
|
|
*/
|
|
|
rightButton?: NavBarButtonTypes|string,
|
|
rightButton?: NavBarButtonTypes|string,
|
|
|
|
|
+ /** 右侧按钮透传样式 */
|
|
|
|
|
+ rightButtonProps?: IconButtonProps;
|
|
|
/**
|
|
/**
|
|
|
* 是否显示右侧按钮
|
|
* 是否显示右侧按钮
|
|
|
* @default true
|
|
* @default true
|
|
@@ -162,10 +166,6 @@ export interface NavBarProps {
|
|
|
*/
|
|
*/
|
|
|
titleScroll?: boolean;
|
|
titleScroll?: boolean;
|
|
|
/**
|
|
/**
|
|
|
- * 图标透传样式
|
|
|
|
|
- */
|
|
|
|
|
- iconProps?: IconProps;
|
|
|
|
|
- /**
|
|
|
|
|
* 自定义类名
|
|
* 自定义类名
|
|
|
*/
|
|
*/
|
|
|
innerClass?: any;
|
|
innerClass?: any;
|