login前几节课好好的,页面突然一片空白了,register页面正常。。。

login前几节课好好的,页面突然一片空白了,register页面正常。。。

<template>
    <div class="wrapper">
        <img src="http://www.dell-lee.com/imgs/vue3/user.png" alt="" class="wrapper__img">
        <div class="wrapper__input">
            <input type="text" class="wrapper__input__content" placeholder="请输入用户名"  v-model="username" />
        </div>
        <div class="wrapper__input">
            <input class="wrapper__input__content" placeholder="请输入密码"  v-model="password" />
        </div>
        <div class="wrapper__login-button" @click="handleLogin">登陆</div>
        <div class="wrapper__login-link" @click="handleRegisterClick">立即注册</div>
        <Toast v-if="show" :message="toastMessage" />
    </div>
</template>

<script>
import {useRouter,toRefs} from 'vue-router'
import {post} from '../../utils/request'
import {reactive} from 'vue'
import Toast,{useToastEffect} from '../../components/Toast'


export default {
  name: 'Login',
  components:{Toast},
  setup(){
    const data=reactive({
        username:'',
        password:''
    })
    const router=useRouter()
    const {show,toastMessage,showToast}=useToastEffect()
    const handleLogin=async()=>{
        try{
            const result=await post('/api/user/login',{
            username:data.username,
            password:data.password
        })
        if(result?.errno===0){
            localStorage.isLogin=true
            router.push({name:'Home'})
        }else{
            showToast('登陆失败')
        }
        }catch(e){
            showToast('请求失败')
        }
    }
    const handleRegisterClick=()=>{
        router.push({name:"Register"})
    }
    const {username,password}=toRefs(data)
    return {
        username,password,
        handleLogin,handleRegisterClick,show,toastMessage}
  }
}
</script>


<style lang="scss" scoped>
@import '../../style/viriables.scss';
.wrapper{
    position: absolute;
    top:50%;
    left:0;
    right:0;
    transform:translateY(-50%);
    &__img{
        width: .66rem;
        height: .66rem;
        display: block;
        margin: 0 auto .4rem auto;
    }
    &__input{
        height: .48rem;
        margin: 0 .4rem .16rem .4rem;
        padding: 0 .16rem;
        background: #F9F9F9;
        border: 1px solid rgba( 0,0,0,0.10);
        border-radius: 6px;
        &__content{
            line-height: .48rem;
            border: none;
            outline: none;
            width: 100%;
            background: none;
            font-size: .16rem;
            color:$content-notice-fontcolor;
            &::placeholder{
                color:$content-notice-fontcolor;
            }
        }
    }
    &__login-button{
        background: #0091FF;
        box-shadow: 0 .04rem .08rem 0 rgba(0,145,255,0.32);
        border-radius: .04rem;
        color:#fff;
        margin: .32rem .4rem .16rem .4rem;
        line-height: .48rem;
        font-size: .16rem;
        text-align: center;
    }
    &__login-link{
        font-size: .14rem;
        color: $content-notice-fontcolor;
        text-align: center;
    }
}

</style>
<template>
    <div class="toast">{{message}}</div>
</template>


<script>
import {reactive,toRefs} from 'vue'
export default{
    props:['message']
}
export const useToastEffect=()=>{
    const toastData=reactive({
        show:false,
        toastMessage:''
    })
    const showToast=(message)=>{
        toastData.show=true
        toastData.toastMessage=message
        setTimeout(()=>{
                toastData.showToast=false
                toastData.toastMessage=''
            },2000)
    }
    const {show,toastMessage}=toRefs(toastData)
    return {show,toastMessage,showToast}
}

</script>


<style lang="scss" scoped>

另外老师课程里的链接不能访问了。。。

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕久久 2022-06-28 09:56:45

同学你好,解答如下:

1、vue-router中没有toRefs方法,如下位置写错了,无法引入toRefs,所以登录页报错了:

https://img1.sycdn.imooc.com//climg/62ba5f6c09d1dbf205520069.jpg

修改如下:

https://img1.sycdn.imooc.com//climg/62ba5fa409e3e12407030139.jpg


2、哪个链接打不开?我这边目前都能打开:

https://img1.sycdn.imooc.com//climg/62ba5fcc0996034d04190552.jpg

可以详细说一下,老师帮你看一下。

祝学习愉快!

  • 提问者 慕侠3297407 #1

    https://www.fastmock.site/mock/ae8e9031947a302fed5f92425995aa19/jd/api/user/login

    访问 www.fastmock.site 的请求遭到拒绝

    您未获授权,无法查看此网页。

    HTTP ERROR 403


    2022-06-28 16:46:48
  • 提问者 慕侠3297407 #2

    找不到 www.fastmock.site 的网页

    找不到与以下网址对应的网页:https://www.fastmock.site/mock/ae8e9031947a302fed5f92425995aa19/jd/api/user/login

    HTTP ERROR 404


    2022-06-28 16:47:28
  • 好帮手慕久久 回复 提问者 慕侠3297407 #3

    可能是该网站禁止同学访问了,老师这边能打开:

    https://img1.sycdn.imooc.com//climg/62bac61809f9507914720567.jpg

    给你提供一个额外接口,同学看看行不行:

    https://mock.apifox.cn/m1/1198446-0-default/api/user/login

    https://img1.sycdn.imooc.com//climg/62bac6930914330513410976.jpg
    2022-06-28 17:15:11
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师