VUE快速入门

VUE是一款用于构建用户界面的渐进式的JavaScript框架

准备:

1.引入VUE模块

2.创建VUE程序的应用实例,控制视图的元素

3.准备元素(div),被Vue控制

javascript 复制代码
<body>
    <div id="app">
        <h1>{{message}}</h1>
        <h2>{{count}}</h2>
    </div>

    <script type="module">
        import { createApp } from 'https://unpkg.com/vue@3/dist/vue.esm-browser.js'
        createApp({
            data() {
                return {
                    message: 'hello vue',
                    count: 100
                }
            }
        }).mount('#app')
    </script>
</body>

常用指令:

vfor: 注意放入的位置

javascript 复制代码
    <div id="container">
         <form action="/search" class="search-form">
         <label for="name"> 姓名:</label>
         <input type="text" id="name" name="name" placeholder="请输入姓名">
         <label for="gender">性别</label>
         <select id="gender" name="gender">
            <option value="">请选择性别</option>
            <option value="男">男</option>
            <option value="女">女</option>
        </select>
        <select name="positon" id="positon">
            <option value="">请选择职务</option>
            <option value="教师">教师</option>
            <option value="学生">学生</option>
        </select>
        <button type="submit">查询</button>
        <button type="reset">重置</button>
     </form>
     <table>
        <thead>
            <tr>
                <th>姓名</th>
                <th>年龄</th>
                <th>性别</th>
                <th>职务</th>
            </tr>
        </thead>
        <tbody>
            <tr v-for="(item, index) in empList" :key="item.id">
                <td>{{item.name}}</td>
                <td>{{item.age}}</td>
                <td>{{item.gender}}</td>
                <td>{{item.job}}</td>
            </tr>
            
        </tbody> 
     </table>
    </div>
   

    <script type="module">
        import { createApp } from 'https://unpkg.com/vue@3/dist/vue.esm-browser.js'
        createApp({
            data() {
                return {
                   empList: [
                    {id: 1, name: '张三', age: 18,gender: '男',job: '前端开发',},
                    {id: 2, name: '李四', age: 19,gender: '男',job: '后端开发',},
                    {id: 3, name: '王五', age: 20,gender: '男',job: '项目经理'}
                ]
                }
            }
        }).mount('#container')
    </script>

vif :基于条件判断,来创建或移除元素节点 要么显示要么不显示

javascript 复制代码
 <tr v-for="(item, index) in empList" :key="item.id">
                <td>{{item.name}}</td>
                <td>{{item.age}}</td>
                <td>
                    <span v-if="item.gender == '1'">男</span>
                    <span v-else>女</span>
                </td>
                <td>{{item.job}}</td>
            </tr>

vshow;基于CSS 控制显示和隐藏 适用于频繁切换的场景

html 复制代码
 <td>
                    <span v-show="item.job == '1'">前端开发</span>
                    <span v-show="item.job == '2'">后端开发</span>
                    <span v-show="item.job == '3'">项目经理</span>
                    <span v-show="item.job == ''">未知</span>
                </td>

v-model 具备双向数据绑定的效果

html 复制代码
 <input type="text" id="name" name="name" placeholder="请输入姓名" v-model="searchForm.name">
 
 <select id="gender" name="gender" v-model="searchForm.gender">

<select name="positon" id="positon" v-model="searchForm.job">



 searchForm: {
                    name: '',
                    gender: '',
                    job: '' 
                }

V-ON 使查询和重置有效

methods与data平级

html 复制代码
 <button type="submit" v-on:click="search">查询</button>

 methods: {
                search() {
                    console.log(this.searchForm);
                }
            }
相关推荐
bjzhang7520 分钟前
使用HTML+CSS美化上传进度条展示
前端·css·html
何以解忧,唯有..26 分钟前
Vue 3 响应式核心:ref() 与 reactive() 的深入解析与实战
前端·javascript·vue.js
晴天1630 分钟前
Chrome DevTools Protocol(CDP)分享-Day36
前端·chrome·chrome devtools
风骏时光牛马31 分钟前
程序员的职场成长:技术之外,更要修炼底层思考力
前端
YWL32 分钟前
CSS变量与预处理器
前端·css
zzzzzz3102 小时前
看 react-bits,不要只看“酷炫”:一套阅读动画交互组件库的框架
javascript·react.js·动效
朱 欢 庆4 小时前
云服务器附件备份到本机内网服务器
运维·服务器·前端·经验分享
支支დ9 小时前
VO by Vercel 前端特定优势:为什么它是构建 AI 应用的新范式
前端·人工智能
香芋芋圆9 小时前
AI 冲击内卷之下,普通前端如何破局?WebGIS—— 低门槛突围赛道
前端·javascript·人工智能·学习·职场发展
INS_KF10 小时前
【编程笔记】成员函数中两个 const 的区别(const Data &getData() const;)
前端·javascript·笔记