mirror of
				https://github.com/pure-admin/vue-pure-admin.git
				synced 2025-11-03 13:44:47 +08:00 
			
		
		
		
	Merge branch 'main' of github.com:pure-admin/vue-pure-admin into gitee
This commit is contained in:
		
						commit
						793e228be2
					
				
							
								
								
									
										1
									
								
								.vscode/extensions.json
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.vscode/extensions.json
									
									
									
									
										vendored
									
									
								
							@ -3,6 +3,7 @@
 | 
				
			|||||||
    "christian-kohler.path-intellisense",
 | 
					    "christian-kohler.path-intellisense",
 | 
				
			||||||
    "vscode-icons-team.vscode-icons",
 | 
					    "vscode-icons-team.vscode-icons",
 | 
				
			||||||
    "davidanson.vscode-markdownlint",
 | 
					    "davidanson.vscode-markdownlint",
 | 
				
			||||||
 | 
					    "ms-azuretools.vscode-docker",
 | 
				
			||||||
    "stylelint.vscode-stylelint",
 | 
					    "stylelint.vscode-stylelint",
 | 
				
			||||||
    "bradlc.vscode-tailwindcss",
 | 
					    "bradlc.vscode-tailwindcss",
 | 
				
			||||||
    "dbaeumer.vscode-eslint",
 | 
					    "dbaeumer.vscode-eslint",
 | 
				
			||||||
 | 
				
			|||||||
@ -22,19 +22,31 @@ notices.value.map(v => (noticesNum.value += v.list.length));
 | 
				
			|||||||
    </span>
 | 
					    </span>
 | 
				
			||||||
    <template #dropdown>
 | 
					    <template #dropdown>
 | 
				
			||||||
      <el-dropdown-menu>
 | 
					      <el-dropdown-menu>
 | 
				
			||||||
        <el-tabs :stretch="true" v-model="activeKey" class="dropdown-tabs">
 | 
					        <el-tabs
 | 
				
			||||||
          <template v-for="item in notices" :key="item.key">
 | 
					          :stretch="true"
 | 
				
			||||||
            <el-tab-pane
 | 
					          v-model="activeKey"
 | 
				
			||||||
              :label="`${item.name}(${item.list.length})`"
 | 
					          class="dropdown-tabs"
 | 
				
			||||||
              :name="`${item.key}`"
 | 
					          :style="{ width: notices.length === 0 ? '200px' : '330px' }"
 | 
				
			||||||
            >
 | 
					        >
 | 
				
			||||||
              <el-scrollbar max-height="330px">
 | 
					          <el-empty
 | 
				
			||||||
                <div class="noticeList-container">
 | 
					            v-if="notices.length === 0"
 | 
				
			||||||
                  <NoticeList :list="item.list" />
 | 
					            description="暂无消息"
 | 
				
			||||||
                </div>
 | 
					            :image-size="60"
 | 
				
			||||||
              </el-scrollbar>
 | 
					          />
 | 
				
			||||||
            </el-tab-pane>
 | 
					          <span v-else>
 | 
				
			||||||
          </template>
 | 
					            <template v-for="item in notices" :key="item.key">
 | 
				
			||||||
 | 
					              <el-tab-pane
 | 
				
			||||||
 | 
					                :label="`${item.name}(${item.list.length})`"
 | 
				
			||||||
 | 
					                :name="`${item.key}`"
 | 
				
			||||||
 | 
					              >
 | 
				
			||||||
 | 
					                <el-scrollbar max-height="330px">
 | 
				
			||||||
 | 
					                  <div class="noticeList-container">
 | 
				
			||||||
 | 
					                    <NoticeList :list="item.list" />
 | 
				
			||||||
 | 
					                  </div>
 | 
				
			||||||
 | 
					                </el-scrollbar>
 | 
				
			||||||
 | 
					              </el-tab-pane>
 | 
				
			||||||
 | 
					            </template>
 | 
				
			||||||
 | 
					          </span>
 | 
				
			||||||
        </el-tabs>
 | 
					        </el-tabs>
 | 
				
			||||||
      </el-dropdown-menu>
 | 
					      </el-dropdown-menu>
 | 
				
			||||||
    </template>
 | 
					    </template>
 | 
				
			||||||
@ -57,8 +69,6 @@ notices.value.map(v => (noticesNum.value += v.list.length));
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.dropdown-tabs {
 | 
					.dropdown-tabs {
 | 
				
			||||||
  width: 330px;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  .noticeList-container {
 | 
					  .noticeList-container {
 | 
				
			||||||
    padding: 15px 24px 0;
 | 
					    padding: 15px 24px 0;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
				
			|||||||
@ -145,6 +145,7 @@ onKeyStroke("ArrowDown", handleDown);
 | 
				
			|||||||
    :style="{
 | 
					    :style="{
 | 
				
			||||||
      borderRadius: '6px'
 | 
					      borderRadius: '6px'
 | 
				
			||||||
    }"
 | 
					    }"
 | 
				
			||||||
 | 
					    append-to-body
 | 
				
			||||||
    @opened="inputRef.focus()"
 | 
					    @opened="inputRef.focus()"
 | 
				
			||||||
    @closed="inputRef.blur()"
 | 
					    @closed="inputRef.blur()"
 | 
				
			||||||
  >
 | 
					  >
 | 
				
			||||||
 | 
				
			|||||||
@ -12,7 +12,7 @@ export const REGEXP_PWD =
 | 
				
			|||||||
  /^(?![0-9]+$)(?![a-z]+$)(?![A-Z]+$)(?!([^(0-9a-zA-Z)]|[()])+$)(?!^.*[\u4E00-\u9FA5].*$)([^(0-9a-zA-Z)]|[()]|[a-z]|[A-Z]|[0-9]){8,18}$/;
 | 
					  /^(?![0-9]+$)(?![a-z]+$)(?![A-Z]+$)(?!([^(0-9a-zA-Z)]|[()])+$)(?!^.*[\u4E00-\u9FA5].*$)([^(0-9a-zA-Z)]|[()]|[a-z]|[A-Z]|[0-9]){8,18}$/;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/** 登录校验 */
 | 
					/** 登录校验 */
 | 
				
			||||||
const loginRules = reactive(<FormRules>{
 | 
					const loginRules = reactive<FormRules>({
 | 
				
			||||||
  password: [
 | 
					  password: [
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      validator: (rule, value, callback) => {
 | 
					      validator: (rule, value, callback) => {
 | 
				
			||||||
@ -44,7 +44,7 @@ const loginRules = reactive(<FormRules>{
 | 
				
			|||||||
});
 | 
					});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/** 手机登录校验 */
 | 
					/** 手机登录校验 */
 | 
				
			||||||
const phoneRules = reactive(<FormRules>{
 | 
					const phoneRules = reactive<FormRules>({
 | 
				
			||||||
  phone: [
 | 
					  phone: [
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      validator: (rule, value, callback) => {
 | 
					      validator: (rule, value, callback) => {
 | 
				
			||||||
@ -76,7 +76,7 @@ const phoneRules = reactive(<FormRules>{
 | 
				
			|||||||
});
 | 
					});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/** 忘记密码校验 */
 | 
					/** 忘记密码校验 */
 | 
				
			||||||
const updateRules = reactive(<FormRules>{
 | 
					const updateRules = reactive<FormRules>({
 | 
				
			||||||
  phone: [
 | 
					  phone: [
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      validator: (rule, value, callback) => {
 | 
					      validator: (rule, value, callback) => {
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user