labbomb
3 years ago
committed by
GitHub
7 changed files with 133 additions and 54 deletions
@ -0,0 +1,39 @@
|
||||
/* |
||||
* Licensed to the Apache Software Foundation (ASF) under one or more |
||||
* contributor license agreements. See the NOTICE file distributed with |
||||
* this work for additional information regarding copyright ownership. |
||||
* The ASF licenses this file to You under the Apache License, Version 2.0 |
||||
* (the "License"); you may not use this file except in compliance with |
||||
* the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
|
||||
import { useRouter } from 'vue-router' |
||||
import type { Router } from 'vue-router' |
||||
import { queryLog } from '@/service/modules/login' |
||||
|
||||
export function useLogin (state) { |
||||
const router: Router = useRouter() |
||||
const handleLogin = () => { |
||||
state.loginFormRef.validate((valid: any) => { |
||||
if (!valid) { |
||||
queryLog({...state.loginForm}).then((res: Response) => { |
||||
console.log('res', res) |
||||
router.push({ path: 'home' }) |
||||
}) |
||||
} else { |
||||
console.log('Invalid') |
||||
} |
||||
}) |
||||
} |
||||
return { |
||||
handleLogin |
||||
} |
||||
} |
@ -0,0 +1,27 @@
|
||||
/* |
||||
* Licensed to the Apache Software Foundation (ASF) under one or more |
||||
* contributor license agreements. See the NOTICE file distributed with |
||||
* this work for additional information regarding copyright ownership. |
||||
* The ASF licenses this file to You under the Apache License, Version 2.0 |
||||
* (the "License"); you may not use this file except in compliance with |
||||
* the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
|
||||
import { WritableComputedRef } from "vue" |
||||
|
||||
export function useTranslate (locale: WritableComputedRef<string>) { |
||||
const handleChange = (value: string) => { |
||||
locale.value = value |
||||
} |
||||
return { |
||||
handleChange |
||||
} |
||||
} |
@ -0,0 +1,53 @@
|
||||
/* |
||||
* Licensed to the Apache Software Foundation (ASF) under one or more |
||||
* contributor license agreements. See the NOTICE file distributed with |
||||
* this work for additional information regarding copyright ownership. |
||||
* The ASF licenses this file to You under the Apache License, Version 2.0 |
||||
* (the "License"); you may not use this file except in compliance with |
||||
* the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
|
||||
import { reactive, ref } from 'vue' |
||||
import { FormRules } from 'naive-ui' |
||||
import { useI18n } from 'vue-i18n' |
||||
|
||||
export function useValidate () { |
||||
const { t, locale } = useI18n() |
||||
const state = reactive({ |
||||
loginFormRef: ref(), |
||||
loginForm: { |
||||
userName: '', |
||||
userPassword: '', |
||||
}, |
||||
rules: { |
||||
userName: { |
||||
trigger: ['input', 'blur'], |
||||
validator() { |
||||
if (state.loginForm.userName === '') { |
||||
return new Error(`${t('login.userName_tips')}`) |
||||
} |
||||
}, |
||||
}, |
||||
userPassword: { |
||||
trigger: ['input', 'blur'], |
||||
validator() { |
||||
if (state.loginForm.userPassword === '') { |
||||
return new Error(`${t('login.userPassword_tips')}`) |
||||
} |
||||
}, |
||||
}, |
||||
} as FormRules, |
||||
}) |
||||
|
||||
return { |
||||
state, t, locale |
||||
} |
||||
} |
Loading…
Reference in new issue