前端框架学习

1.vue入门

el:控制的区域

data:定义的数据模型(v-model)实现双向的数据绑定(MVVM)

{{message}}:插值表达式

关于这里的vue.js它是官方文档的内容 第一步通过src='js/vue.js'引入

2.vue的常用指令 基础指令地址参考八个Vue中常用的v指令详解_vue.js_脚本之家

(1)v-for的用法

注:push向数组增加元素 shift向数组移除元素

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="js/vue.min.js"></script>
</head>
<body>
    <div id="app">
        <ul>
            <!-- v-for:在 li 标签中进行获取数组元素,进行展示 -->
            <!-- item: 循环得到的元素;index:获取元素在数组中的下标 -->
            <li v-for="item,index in arr1">
                第{{index + 1}}个同学: {{item}}
            </li>
        </ul>
        <hr>
        <input type="button" value="添加数据" @click="addData">
        <input type="button" value="移除数据" @click="removeData">
        <!-- v-for 遍历,展示数据 -->
        <h2 v-for="person in persons">
            我是 {{person.name}}, 我今年 {{person.age}} 岁.
        </h2>
    </div>
</body>
<script>
    var VM = new Vue({
        el: "#app",
        data: {
            // 数组
            arr1: ["Mike", "John", "Jack"],
            // 对象数组
            persons: [
                {name: "Mike", age: 21},
                {name: "John", age: 22},
                {name: "Jack", age: 23},
            ],
        },
        methods: {
            addData: function(){
                // 向数组中添加元素
                this.persons.push({name: "Peter", age: 24});
            },
            removeData: function(){
                // 移除数组中的元素,会移除第一个元素
                this.persons.shift();
            },
        },
    });
</script>
</html>

结果展示如下:

(2)v-on的用法

von相当于js中的事件绑定 如果不使用von的话需要1.拿到dom对象const obj1 = document.queryselect()2.为dom对象绑定事件触发obj1.addeventlensiner

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>von的练习</title>
    <script src="js/vue.js"></script>
</head>
<body>
    <div id="app">
        <input type="button" value="点击按钮送礼物" v-on:click="give(3,'玫瑰花')">
        <span >向主播刷{{num}}个{{gift}}</span>
        <br>
        <input type="text" value="输入回车会有弹窗" v-on:keyup.enter="handle">
    </div>
</body>
<script>
    new Vue({
        el:"#app",
        data:{
            num:0,
            gift:"火箭",
        },
        methods: {
            give:function(n1,n2){
                this.num = n1;
                this.gift = n2;
            },
            handle:function(){
              alert("送礼完毕");
            },
        },
    });
</script>
</html>

(3)v-bind的用法 

注意事件绑定 单项事件绑定(在浏览器修改后的值不会返回到vue中)双向数据绑定v-modle(在浏览器修改后的值会返回到vue中MVVM模型)

(4)关于获取事件触发后的值

keydown后面可以跟不同的事件类型

(5)css样式的绑定

:class用于动态样式的绑定(动态绑定的好处是便于修改如下图) :class = "arr"这里的arr可以被定义为数组里面存放三个样式当不需要某个样式时 直接vm.arr.shift() 添加某个新样式时vm.arr.push()

v-model.number 将输入的东西转为数字

(6)VUE组件化

为什么要组件化:可移植,可拓展性好

非单文件组件(一个文件有多个组件)和单文件组件(一个文件只有一个组件)

1.创建一个组件 vue.extend()2.写组件标签<组件1></组件1>3.在vm里面注册组件 component:{组件1,组件2}

3.前端开发工程化

vue脚手架的环境vue-cli是一个vue的项目模块

1.模块化(css,js)2.组件化(element ui)3.规范化 4.自动化

以.vue结尾的文件叫做vue的组件文件 每个组件文件由三个部分组成<template><script><style>

main.js叫做入口文件

1.引入vue (import vue from xxx) 2.引入app组件(是所有组件的父组件)3.创建vue的对象 把app组件放进来

关于props配置项 的大概意思是子组件.vue里面js的区域添加props属性定义类型 能允许 app父组件根据<student name:"xxx" gender:"xxx>的方式来定义

关于复选框是否被选中的属性:checked值为true或者false

关于子组件调用父组件(App)的两种方法

1.最基础的方法 使用props 在父组件里面声称一个函数在子组件中使用props:['父组件函数名']能拿到父组件的内容

2.使用自定义事件:两种写法

(1)父组件调用子组件<Student @自定义事件名:方法名> 子组件$emit('自定义事件名','传递参数给父组件')

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值