vue3-新建组件

在views中新建一个组件Create.vue,如下:

<script setup>

</script>
 
<template>
   <div>创建博客</div>
</template>
 
<style scoped>

</style>

然后在index.js中配置这个路由,如下:

    import {createRouter,createWebHistory} from "vue-router";
    import Home from "../views/Home.vue";
    import Details from "../views/Details.vue";
    import Create from "../views/Create.vue";

    const routes=[
    {path:"/",name:"Home",component:Home},
    {path:"/posts/:id",name:"Details",component:Details,props:true},
    {path:"/create",name:"Create",component:Create},
    ];
    const router=createRouter({
        history:createWebHistory(),
        routes

    })
    export default router;

在Navbar.vue这个导航组件中也使用了这个create路由,如下:

<script setup>

</script>

<template>
  <header>
    <h1>个人博客</h1>
    <nav>
      <!--<router-link :to="{name:'Home'}">首页</router-link>-->
      <!--下边这种方式也可以-->
      <router-link to="/">首页</router-link>
      <router-link to="/create">新建</router-link>


    </nav>
  </header>
</template>

<style scoped>
</style>

这样点击新建就可以看到这个新建页面了,效果如下:

下面进行一个表单的设计,Create.vue如下:

<script setup>
import {ref} from "vue";
const title=ref("");
const body=ref("");
const tags=ref([]);
const tag=ref("");
const handleKeydown=()=>{
    //存放不重复的并且不带空格的标签
    if(!tags.value.includes(tag.value)){
        tag.value=tag.value.replace(/\s/g,'');
        tags.value.push(tag.value);
    }
    tag.value="";


}
</script>
 
<template>
   <div class="create">
    <form>
        <label for="title">标题</label>
        <input type="text" v-model="title" required />
        <label for="body">内容</label>
        <textarea v-model="body" />
        <label for="tag">标签(回车添加标签)</label>
        <input type="text" v-model="tag" @keydown.enter.prevent="handleKeydown"/>
        <!--显示标签-->
        <div v-for="tag in tags" :key="tag" class="pill">#{{tag}}</div>
        <button>添加</button>
    </form>
   </div>
</template>
 
<style scoped>

</style>

 里面展示了一个标签,标签进行了不重复并且不带空格的处理,如下:

现在没有添加样式 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱人间

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值