前端学习--Vue.js Day5

1、名称案例:
方法1:使用keyup(监听键盘抬起事件)事件实现
但是keyup不能监听看不见,摸不着的数据变化(例如:路由变化)

<template>
  <div>
    <input type="text" v-model="firstname" @keyup="getfullname">&nbsp;+
    <input type="text" v-model="lastname" @keyup="getfullname">&nbsp;=
    <input type="text" v-model="fullname">
  </div>
</template>

<script>
  export default {
    name: 'day_five',
    data(){
      return{
        firstname:'',
        lastname:'',
        fullname:''
      }
    },
    methods:{
      getfullname(){
        this.fullname = this.firstname + "-" + this.lastname
      }
    }
  }
</script>

方法2:使用watch监听文本框数据的变化

<template>
  <div>
    <input type="text" v-model="firstname" >&nbsp;+
    <input type="text" v-model="lastname" >&nbsp;=
    <input type="text" v-model="fullname">
  </div>
</template>

<script>
  export default {
    name: 'day_five',
    data(){
      return{
        firstname:'',
        lastname:'',
        fullname:''
      }
    },
    watch:{
    //  使用这个属性,可以监视data中制定数据的变化,然后触发watch
    //  对应的处理函数
      'firstname':function () {
        this.fullname = this.firstname + "-" + this.lastname
      },
      'lastname':function () {
        this.fullname = this.firstname + "-" + this.lastname
      }
    }
  }
</script>

watch-监视路由地址的改变,watch:可以监听到非DOM元素
在这里插入图片描述
方法3:computed-计算属性的使用和3个特点

<template>
  <div>
    <!--<input type="text" v-model="firstname" @keyup="getfullname">&nbsp;+-->
    <!--<input type="text" v-model="lastname" @keyup="getfullname">&nbsp;=-->
    <input type="text" v-model="firstname" >&nbsp;+
    <input type="text" v-model="lastname" >&nbsp;=
    <input type="text" v-model="fullname">
    <router-link to="/case1">case1</router-link>
  </div>
</template>

<script>
  export default {
    name: 'day_five',
    data(){
      return{
        firstname:'',
        lastname:'',
      }
    },
    computed:{
      //在computed中,可以定义一些属性,这些属性叫做[计算属性],计算属性的本质就是一个方法,
      //只不过我们在使用这些属性的时候,是把它们的名称直接当作属性来使用,并不会把计算属性当作方法调用
      fullname:function () {
        //注意:1.计算属性这个function内部,所用到的任何data中的数据发送了变化
        // 就会立即重新计算这个计算属性的值
        //注意:2.计算属性在引用的时候,一定不要加()去调用,直接把它当作普通属性去使用就好
        //优点:计算属性的求值结果会被缓存起来,方便下次直接使用;
        //如在div中有多次输出fullname结果的,那么这个函数只会执行一次,之后的输出都是直接用缓存数据
        return this.firstname + "-" + this.lastname
      }
    }
  }
</script>

watch、computed、methods的对比:
在这里插入图片描述
2、nrm的使用
在这里插入图片描述
在这里插入图片描述
3、webpack-概念引入
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
由于webpack是基于Node进行构建的额,所有webpack的配置文件中,任何合法的Node代码都是支持的
4、webpack-最基本的使用方式
npm init -y:是一个管理工具;在创建使用项目的开始时候运行
当创建的项目名称为中文时,使用npm init 且回车后需要手写一遍项目名称
在这里插入图片描述
当代码太高级浏览器无法解析时,可以通过webpack去处理,
在这里插入图片描述
遇到问题:
(1)WARNING in configuration The ‘mode’ option has not been set, webpack will fallback to ‘production’ for this value. Set ‘mode’ option to ‘development’ or ‘production’ to enable defaults for each environment.
(2)The CLI moved into a separate package: webpack-cli.
Please install ‘webpack-cli’ in addition to webpack itself to use the CLI.
-> When using npm: npm install webpack-cli -D
-> When using yarn: yarn add webpack-cli -D
原因:webpack 4.0版本将webpack-cli分离,需要额外安装webpack-cli
解决方法:
https://www.cnblogs.com/cythia/p/8495341.html
(1)检查webpack和webpack-cli是否全局安装
在这里插入图片描述
(2)安装完成后执行代码
在这里插入图片描述
5、webpack-最基本的配置文件的使用
在这里插入图片描述

6、webpack-dev-server的基本使用
安装:npm install webpack-dev-server -D

<script src="/bundle.js"></script>

把打包生成的bundle.js文件放在内存:使用速度较快;ctr + c(手动退出服务器)
此时html文件是物理磁盘中的数据,根目录下的bundle.js文件是电脑内存中
在这里插入图片描述
7、webpack-dev-server的常用命令参数
方式1:(推荐)
在这里插入图片描述
方式2:在webpack.config.js中设置
webpack中带‘s’的名称都是数组
在这里插入图片描述
8、html-webpack-plugin的i两个基本作用
将html文件也放到电脑内存中;安装 npm install html-webpack-plugin -D

在这里插入图片描述
9、loader-配置处理css样式表的第三方loader
webpack默认只能打包JS类型的文件
安装:cnpm i style-loader css-loader -D
在这里插入图片描述
在这里插入图片描述
分析webpack调用第三方loader的过程:
在这里插入图片描述
10、loader-配置处理less文件的loader
安装:cnpm i less-loader -D
在这里插入图片描述
11、loader-配置处理scss文件的loader
安装:cnpm i sess-loader -D、cnpm i node-sass -D
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值