Web day02 Js & Vue & Ajax

目录

1.javascript:

1.js的引入方式:

[2.js变量 & 数据类型 & 输出语句:](#2.js变量 & 数据类型 & 输出语句:)

模板字符串:

[3.函数 & 自定义对象:](#3.函数 & 自定义对象:)

[4. json 字符串 & DOM操作:](#4. json 字符串 & DOM操作:)

[5. js事件监听:](#5. js事件监听:)

6.js的模块化导入或者导出:

2.Vue:

1.vue的准备工作:

[2.Vue 指令:](#2.Vue 指令:)

1.v-for:

2.v-bind:

[3.v-if & v-show:](#3.v-if & v-show:)

4.v-model:

5.v-on:

3.Vue生命周期:

3.Ajax:

axios:


1.javascript:

概念:是一门浏览器脚本语言 弱类类型的语言 无需编译 浏览器直接解析执行

1.js的引入方式:

方式1:

方式2:

2.js变量 & 数据类型 & 输出语句:

变量:

常量:

数据类型:

模板字符串:

使用反引号: ` ` 引起来的字符串也称为模板字符串

使用场景:拼接字符串和变量。

  • 内容拼接时,使用 ${ } 来引用变量

3.函数 & 自定义对象:

函数方式1:

方式2匿名函数:

箭头方式创造:

自定义对象:

函数可以 以 以下方式进行简化

4. json 字符串 & DOM操作:

json对象: key必须使用双引号标记 value除了数字其他的也必须使用双引号标记

注意:使用 stringify 转换字符串时 如果 person中有函数不会转换 jason 只会转换 属性名 和属性值

JS DOM:

DOM 封装的对象有:

DOM操作:

  • DOM的核心思想:将网页的内容当做对象来处理,标签的所有属性在该对象上都可以找到,并且修改这个对象的属性,就会自动映射到标签身上。

  • document对象

    • 网页中所有内容都封装在document对象中

    • 它提供的属性和方法都是用来访问和操作网页内容的,如:document.write(...)

  • DOM操作步骤:

    • 获取DOM元素对象

    • 操作DOM对象的属性或方法 (查阅文档)

  • 我们可以通过如下两种方式来获取DOM元素。

    • 根据CSS选择器来获取DOM元素,获取到匹配到的第一个元素:document.querySelector('CSS选择器');

    • 根据CSS选择器来获取DOM元素,获取匹配到的所有元素:document.querySelectorAll('CSS选择器');

注意:获取到的所有元素,会封装到一个NodeList节点集合中,是一个伪数组(有长度、有索引的数组,但没有push、pop等数组方法)

选择器有:

1.元素(标签选择器)

2.类选择器 :' .类名 '

3.id选择器:'#id名'

javascript 复制代码
 <script>
    /* 借助于DOM操作html元素 */
    //需求一: 把第一个h1标签的内容修改为 我爱柳岩
    let h1Ele = document.querySelector('#title1')
    h1Ele.innerHTML = 'new title'

    //需求二: 把第一个h1标签的颜色修改为红色
    let h1Ele2 = document.querySelector('h1')
    h1Ele2.style.color = 'red'

    //需求三: 把所有的h1标签的背景色修改为绿色
    let h1Eles = document.querySelectorAll('h1')
    for(let i=0; i<h1Eles.length; i++){
      h1Eles[i].style.backgroundColor = 'green'
    }
  </script>

5. js事件监听:

核心逻辑: 当在某个地方发生了某件事的时候,会自动的执行一段带代码

实现 鼠标 移入自动变色的效果

常见的事件有:

6.js的模块化导入或者导出:

2.Vue:

1.vue的准备工作:

  • 准备一个html文件,并在其中引入Vue模块 (参考官方文档,复制过来即可)【注意:模块化的js,引入时,需要设置 type="module"

  • 创建Vue程序的应用实例,控制视图的元素

  • 准备元素(div),交给Vue控制

本质为运用模块化导入createApp函数 传参为自定义类型 data为自定义类型中的函数

methods为键 值为 {}自定义类型

操纵dom对象:

2.Vue 指令:

指的是HTML 标签上带有 v- 前缀的特殊属性,不同指令具有不同含义,可以实现不同的功能 。例如:v-if,v-for...

1.v-for:

empLIst为有很多自定义对象的数组

2.v-bind:

data为 createApp 中的函数

3.v-if & v-show:

注意:

v-if: 条件不满足,标签不存在

v-show: 条件不满足, 通过display:none控制不显示

4.v-model:

完成数据到表单项的双向绑定

input的数据会同步到 Vue data中的 serchEmp 自定义对象中

5.v-on:

3.Vue生命周期:

vue实例从生到死的过程, 共经历8个阶段,每个阶段都会调用特定的函数

mounted钩子函数

注意:mounted:挂载完成,Vue初始化成功,HTML页面渲染成功。以后我们一般用于页面初始化自动的ajax请求后台数据 mounted函数和methots平级

3.Ajax:

概念: asynchronous javascript and xml, 异步的js和xml

同步:发起请求后, 浏览器需要等待请求完毕,才能做其它操作

异步:发起请求后, 浏览器无需等待请求完毕,可以做其它操作

异步的本质为开启子线程不影响主线程的执行

axios:

分为两步:

1.

可以简写为:

async await为js中的关键字

修改前:

javascript 复制代码
search() {
    //基于axios发送异步请求,请求https://web-server.itheima.net/emps/list,根据条件查询员工列表
    axios.get(`https://web-server.itheima.net/emps/list?name=${this.searchForm.name}&gender=${this.searchForm.gender}&job=${this.searchForm.job}`).then(res => {
      this.empList = res.data.data
    })
  },

修改后:

javascript 复制代码
  async search() {
    //基于axios发送异步请求,请求https://web-server.itheima.net/emps/list,根据条件查询员工列表
    const result = await axios.get(`https://web-server.itheima.net/emps/list?name=${this.searchForm.name}&gender=${this.searchForm.gender}&job=${this.searchForm.job}`);
    this.empList = result.data.data;
  },
相关推荐
崔庆才丨静觅7 小时前
hCaptcha 验证码图像识别 API 对接教程
前端
passerby60618 小时前
完成前端时间处理的另一块版图
前端·github·web components
掘了8 小时前
「2025 年终总结」在所有失去的人中,我最怀念我自己
前端·后端·年终总结
崔庆才丨静觅8 小时前
实用免费的 Short URL 短链接 API 对接说明
前端
崔庆才丨静觅8 小时前
5分钟快速搭建 AI 平台并用它赚钱!
前端
崔庆才丨静觅9 小时前
比官方便宜一半以上!Midjourney API 申请及使用
前端
Moment9 小时前
富文本编辑器在 AI 时代为什么这么受欢迎
前端·javascript·后端
崔庆才丨静觅9 小时前
刷屏全网的“nano-banana”API接入指南!0.1元/张量产高清创意图,开发者必藏
前端
剪刀石头布啊9 小时前
jwt介绍
前端
爱敲代码的小鱼9 小时前
AJAX(异步交互的技术来实现从服务端中获取数据):
前端·javascript·ajax