This commit is contained in:
Ling53666
2025-08-18 09:11:51 +08:00
commit 02554225da
2516 changed files with 133155 additions and 0 deletions

View File

@ -0,0 +1,16 @@
<view
class="ant-container {{headerInBox ? 'ant-container-headerInBox' : 'ant-container-headerNotInBox'}} {{className ? className : ''}}"
style="{{style}}"
>
<view class="ant-container-header">
<view class="ant-container-header-title">
<slot name="title">{{title}}</slot>
</view>
<view class="ant-container-header-right">
<slot name="headerRight"></slot>
</view>
</view>
<view class="ant-container-content">
<slot></slot>
</view>
</view>

View File

@ -0,0 +1 @@
import '../_util/assert-component2';

View File

@ -0,0 +1,5 @@
import { ContainerDefaultProps } from './props';
import '../_util/assert-component2';
Component({
props: ContainerDefaultProps,
});

View File

@ -0,0 +1,3 @@
{
"component": true
}

View File

@ -0,0 +1,55 @@
@import (reference) './variable.less';
@import '../style/mixins/hairline.less';
@containerPrefix: ant-container;
.@{containerPrefix} {
border-radius: @container-radius;
margin-bottom: 24 * @rpx;
&-headerInBox {
background-color: @container-background-color;
.@{containerPrefix}-header {
padding: 0 @container-spacing;
.@{containerPrefix}-header-title,
.@{containerPrefix}-header-right {
position: relative;
.hairline('bottom');
}
}
}
&-content {
padding: @container-spacing;
background-color: @container-background-color;
border-radius: @container-radius;
}
&-header {
display: flex;
&-title {
font-size: @container-header-size;
font-weight: bold;
color: @container-header-color;
display: flex;
align-items: center;
height: 96 * @rpx;
flex: 1;
&:empty {
display: none;
}
}
&-right {
color: @COLOR_TEXT_ASSIST;
display: flex;
align-items: center;
height: 96 * @rpx;
justify-content: flex-end;
&:empty {
display: none;
}
}
.@{containerPrefix}-header-title:empty
+ .@{containerPrefix}-header-right:not(:empty) {
flex: 1;
}
}
}

View File

@ -0,0 +1,24 @@
import { IBaseProps } from '../_util/base';
/**
* @description 容器,依据最佳实践统一了元素的间距、圆角,并可根据具体情况选择使用 title 内容。
*/
export interface IContainerProps extends IBaseProps {
/**
* @description 标题
*/
title?: string;
/**
* @description 标题是否在容器内
* @default true
*/
headerInBox?: boolean;
/**
* @description 类名
*/
className?: string;
/**
* @description 样式
*/
style?: string;
}
export declare const ContainerDefaultProps: IContainerProps;

View File

@ -0,0 +1,3 @@
export var ContainerDefaultProps = {
headerInBox: true,
};

View File

@ -0,0 +1,12 @@
@import (reference) '../style/themes/index.less';
// 字体颜色
@container-header-color: @COLOR_TEXT_PRIMARY;
// 字体大小
@container-header-size: 32 * @rpx;
// 边距
@container-spacing: @h-spacing-large;
// 圆角
@container-radius: @corner-radius-lg;
// 背景
@container-background-color: @COLOR_CARD;