社区脚本中心 → 浏览:帖子主题
* 帖子主题:Vue 基本写法
pojin (ID: 1)
头衔:论坛坛主
等级:究级天王[荣誉]
积分:1301
发帖:99
来自:保密
注册:2022-08-28 23:20:57
造访:2025-03-23 21:18:24
[ 第 1 楼 ] 回复
vue 基本写法及注意事项:

1、vue结构需要引用vue.min.js运行:
<script src="./node_modules/vue/dist/vue.min.js"></script>

2、vue基本结构表达写法:
    <div id="app">
        <!-- 插值表达式语法 -->
        <h1>{{msg}}</h1>
    </div>
</body>
<script src="./node_modules/vue/dist/vue.min.js"></script>
<script>
    new Vue({
        // 挂载点
        el: "#app",
        // 定义数据  数据驱动视图
        data: {
            msg: "万里长城人未还"
        }
    })
</script>

vue 绑定事件:
<div id="app">
        <!-- 插值表达式语法 -->
        <h1 @mouseover="mousfn('不教胡马度阴山')">{{msg}}</h1>
        <h1>{{status==0?"未发货":"已发货"}}</h1>
        <h1 v-on:click="show">111</h1>
        <h1 @click="showMsg">44</h1>
    </div>
</body>
<script src="./node_modules/vue/dist/vue.min.js"></script>
<script>
    new Vue({
        // 挂载点
        el: "#app",
        // 定义数据  数据驱动视图
        data: {
            msg: "万里长城人未还",
            status: "!"
        },
        methods: {
            show: function () {
                // alert(1)
                this.showMsg()
            },
            showMsg() {
                alert(this.msg)
            },
            mousfn(i) {
                alert(i)
            }
        }
    })

vue条件判断写法:if  && else if 
  <div id="app">
        <input type="text" value="输入框" @click="opens">
        <h2 v-if="status==1">你好</h2>
        <h2 v-else-if="status==2">hello</h2>
        <h2 v-else>关关雎鸠</h2>
    </div>
</body>
<script src="./node_modules/vue/dist/vue.min.js"></script>
<script>
    new Vue({
        // 挂载点
        el: "#app",
        // 定义数据  数据驱动视图
        data: {
            msg: "万里长城人未还",
            status: 1
        },
        methods: {
            opens() {
                var p = prompt("请输入数字")
                this.status = p
            }
        }
    })

vue显示v-show
      <button @click="opens">切换</button>
        <!-- v-if是把元素从文档中删除,而v-show是使用行内样式的display属性控制显示和隐藏 -->
        <!-- v-if频繁的切换,比较消耗性能,推荐在首次渲染的时候使用;v-show在频繁切换的时候,对性能的影响更小,适合频繁切换 -->
        <p v-show="show">完蛋了</p>
    </div>
    <script src="./node_modules/vue/dist/vue.min.js"></script>
    <script>
        new Vue({
            el: "#app",
            data: {
                num: 1,
                mes: "真棒",
                mes2: "优秀",
                show: true
            },
            methods: {
       
                opens() {
                    this.show = !this.show
                }
            }
        })
    </script>

2023-01-19 09:45:58 IP:已设置保密
pojin (ID: 1)
头衔:论坛坛主
等级:究级天王[荣誉]
积分:1301
发帖:99
来自:保密
注册:2022-08-28 23:20:57
造访:2025-03-23 21:18:24
[ 第 2 楼 ] 回复
vue动态绑定v-bind:  可以简写为 :
<tr v-for="(v,i) in list" v-bind:key="v.id">
                <td>{{v.name}}</td>
                <td>{{v.age}}</td>
            </tr>

vue样式v-class:
<div id="app">
        <h1 :class="{red:flag,bg:flag2}">用户系统</h1>
        <table border="1" cellpadding="5">
            <tr>
                <th>姓名</th>
                <th>年纪</th>
            </tr>
            <!-- 循环的时候,需要动态绑定一个key 动态绑定需要使用v-bind,可以简写为 : -->
            <tr v-for="(v,i) in list" v-bind:key="v.id">
                <td>{{v.name}}</td>
                <td>{{v.age}}</td>
            </tr>
        </table>
    </div>
    <script src="./node_modules/vue/dist/vue.min.js"></script>
    <script>
        new Vue({
            el: "#app",
            data: {
                flag: true,
                flag2:true,
                list: [
                    {

                        id: 1,
                        name: "张三",
                        age: 30
                    },
                    {
                        id: 2,
                        name: "李四",
                        age: 30
                    },
                    {
                        id: 3,
                        name: "王五",
                        age: 30
                    },

                ]
            }
        })

vue样式  :style
<tr v-for="(v,i) in list" v-bind:key="v.id" :style="{color:v.flag?'red':'green'}">
2023-01-19 09:46:43 IP:已设置保密
分页: 1, 共 1 页
快速回复主题
账号/密码
用户: 没有注册?密码:
评论内容