• vue系列---------vuejs基础学习1.0


    前端vue之父------尤雨溪 

    相关资料:https://juejin.im/post/5d60e1586fb9a06aea619dc4

    Vue 官网地址https://cn.vuejs.org/

    谷歌浏览器chrome的vuejs devtools插件安装   

    参考资料:https://www.cnblogs.com/alice-fee/p/8038367.html

    如何快速的上手vuejs呢?

    1. html页面 引入 vuejs
      npm install vue 下载包
    //第一种方式npm包管理引入
    <script type="text/javascript" src="./node_modules/vue/dist/vue.js"></script>
    <!-- 使用 npm 下载的包 存在 1. src 目录(soruce),一般是源码目录,不能直接用,需要编译 2. dist 目录,存放编译后的文件的目录 这个才是可以使用的。 dist(distaination 目的地 2. distribution 分布、发布)-->
    //第二种方式下载引入js文件
    <script type="text/javascript" src="js/vue.js"></script>
    2. 定义一个 vuejs 管理的区域(使用 vuejs 提供的语法进行操作 vuejs 没有DOM)
    注意:管理区域说白了就是一个DOM区域,但是不能是 html 或者 body 区域


        <!-- 一般管理的区域叫做 app 或者 box -->
        <!-- V 视图 -->
        <div id="app">
            <!-- 这个区域 vuejs 管理 写vuejs特定的代码 插值表达式 指令 -->
            <h2>{{ title }}</h2>
            <hr>
            <p>{{ infos }}</p>
            <!-- 现在的视图展示数据 -->
            <hr>
            <!-- 方式二: 视图-模型 -->
            <input type="text" v-model="username">
            <hr>
            <!-- 方式一: 模型视图 -->
            <p>{{ username }}</p>
        </div>    
        <div>
            <h2>不在 vuejs 管理的区域</h2>
            <p>{{ username }}</p>
        </div>
    </body>
    <script type="text/javascript" src="js/vue.js"></script>
    <script type="text/javascript">
        // vuejs 是一个 MVVM  框架
        // M Model  V 代表视图 VM 代表 ViewModel Vuejs提供
        // Model模型
        var obj = {
            // 视图里面 插值表达式 写的就是 Model里面的属性,直接,一般叫做 模型变量
            title: '标题',
            infos: '信息',
            username: 'default UserName'
        };
    
        // VM Controller 
        var vm = new Vue({
            el: '#app', // 值就是 css选择器,ID选择器
            data: obj, // 代表和Model产生关系
        }); // 接受参数:对象 1. el(element) 2. data 属性
        console.log( vm );
    
    </script>
    3. 进行 vuejs 代码调用
    注意: 当引入 vuejs 全局内暴露出来一个 Vue 构造函数

     

    案例实现:输入数字计算值

    <body>
    
        <!--2. 定义vuejs管理区域-->
        <div id="box">
            <p>运费:每公斤 10 元</p>
            重量:<input type="number" id="number" v-model="number">KG <br>
            总价:<b id="total">{{ number * 10 }}</b>
        </div>
    
    </body>
    //第一种原生实现:
    <script type="text/javascript">
        // 1. 事件监听 DOM操作
        $("#number").keyup(function () {
            // 2. 业务逻辑 DOM操作
            var number = parseInt($(this).val());
            // this.value;//
            var total = number * 10;
            // 3. 还是DOM操作
            $("#total").html( total );
        })
    </script>
    
    //第二种:Vuejs  操作实现无DOM
    <script type="text/javascript">
        使用 vuejs 编写代码
        new Vue({
            el: '#box',
            data: {
                number:0,
            }
        })
    </script>

     

    vuejs模型学习

    1. 基本类型数据展示 string number boolean undefined null

    HTML部分:
     <div id="box">
        <p>{{ string1 }}</p>
        <p>{{ number1 }}</p>
        <p>{{ boolean1 }}</p>
        <p>{{ unkown1 }}</p>
        </div>
    
    
    Javascript部分:
    new Vue({
            el: '#box',
            // 可以这样理解 data 就是 Model
            data: {
                // data 里面的属性一般叫做 模型变量,可以在视图里面 进行调用
                // 1. 基本数据类型
                string1: 'lorem  hi vuejs',
                number1: 13,
                boolean1: false,
                unkown1: undefined,
                unkown2: null
        }        
    });


    2.复合数据类型展示(引用数据类型) Object Array

     vuejs 提供一种模板引擎语法,叫做插值表达式 {{ '插值表达式' }}

    插值表达式里面可以写什么东西? 表达式: 1. 模型变量 2. 可以一些一些简单js语法 三目 字符串的拼接

     

    复合数据类型的展示
    1. 获取单个值  2. 遍历 for()循环 vuejs 提供了一个类似 v开头的东西,叫做 指令

     数组类型:

    HTML部分:
    <div id="box">
    第一种取单值:
    <p>{{ array1 }}</p> <p>{{ array1[0] }}</p> <p>{{ array1[1] }}</p>

    第二种遍历:取下标和值
    <ul>
    <!--for(var attr in obj) for...in 遍历对象的属性,但是 vuejs 可以 v-for 语法遍历 数组对象-->
    <li v-for="(ele,index) in array1">下标:{{ index }}, 值:{{ ele }}</li>
    </ul>
    </div>
    
    Javascript部分:
    <script type="text/javascript">
        new Vue({
            el: '#box',
            data: {
              array1: [12, 23, 34, 45]
           }
      });
    </script>
     

    对象Object:

    HTML部分:
    <div id="box">
    取单值:
    <p>{{ obj1['name'] }}</p>

    取出值和下标 <ul>
    <li v-for="(value,attr,index) in obj1">属性名称:{{ attr }} 属性的值:{{ value }} 下标:{{ index }}</li>
        </ul>
    </div>


    Javascript部分:

    <script type="text/javascript">

    new Vue({
    el:
    '#box',
    data: {
    obj1: {
    id:
    1, name: 'andy',
    address:
    'shenzhenshi'
    }
    });
    </script>

    数组对象型:

    HTML部分:
    <div id="box">
         <ul v-for="ele in objArray">
            <li>序号:{{ ele.id }}</li>
            <li>用户名:{{ ele.name }}</li>
            <li>住址:{{ ele.address }}</li>
        </ul>
    </div>
    
    Javascript部分:
    
    <script type="text/javascript">
        new Vue({
                el: '#box',
            data: {
                 objArray: [
                    {id: 12, name: 'lilei', address: 'shenzhen'},
                    {id: 23, name: 'mark', address: 'guangzhoushi'}
                ]};
            })
            </script>

    注:以上均引用vue.js

    1. 什么是指令?

    指令是作为元素的属性而出现,扩充了html原本的属性 name id class。
    for(var attr in obj) for...in 遍历对象的属性,但是 vuejs 可以 v-for 语法遍历 数组对象
    例如
    <li v-for="(ele,index) in array1">下标:{{ index }}, 值:{{ ele }}</li>
    <li v-for="(value,attr,index) in obj1">属性名称:{{ attr }} 属性的值:{{ value }} 下标:{{ index }}</li>

     

    插值表达式里面到底可以写那些东西?

    1. 模型变量
    2. 条件表达式
    3. 四则运算 +-*/
    4. 逻辑运算 && || !
    5. js特殊运算, 例如连接字符串+
    6. 字面量-
    7. 自定义的全局 函数 没办法使用
    8. ECMAScript定义函数 例如Math.random(),parseInt()等
    9. 不能写语句  例如var a=1;









     

    集思广益,仅供学习,侵权即删!!
  • 相关阅读:
    JVM总结-java基本类型
    JVM总结-虚拟机怎么执行字节码
    spring-BeanDefinition流程源码分析
    spring-BeanFactory源码解析
    linux文件基本权限-基本权限的修改
    Spring-IoC容器初始化流程源码分析
    spring-AOP
    JavaScript笔记 第十六章 匿名函数和闭包
    C# 指针(unsafe与fixed的使用)
    devenv.exe
  • 原文地址:https://www.cnblogs.com/hudunyu/p/11414996.html
Copyright © 2020-2023  润新知