AJAX + 小程序入门

AJAX小程序入门

AJAX是什么

  • 异步
  • 前后端交互
  • 在不更新页面的情况下 加载新数据

AJAX流程

  1. 初始化参数
  2. 发送请求
  3. 解析数据 (回调Promise)

四种方式使用Ajax

原生Ajax


    //创建XMLHttpRequest对象
    let xhr = new XMLHttpRequest();
    //初始化请求信息
    xhr.open("post", "http://www.httpbin.org/post");
    // xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xhr.setRequestHeader("Content-Type", "application/json");
    //发送请求
    // xhr.send("page=5&type=1");
    xhr.send(JSON.stringify({ page: 1, type: 2 }));
    //绑定事件 判断是否请求成功
    xhr.onreadystatechange = function () {
      if (xhr.readyState == 4 && xhr.status == 200) {
        console.log(xhr.responseText);
        //提取IP信息
        //json字符串 --->js对象
        let temp = JSON.parse(xhr.responseText);
        console.log("ip地址", temp.origin);
        //DOM渲染
      }
    };

JQuery Ajax

$.get("http://127.0.01:5000/douban", { page: 1 }, function (data) {
        console.log(typeof data, data);
      });

Fetch(浏览器厂商自己定义)

fetch("http://www.httpbin.org/post", {
        method: "post", //方法
        headers: {
          "Content-Type": "application/x-www-form-urlencoded",
        }, //请求头
        body: "page=1&type=2", //数据  请求体
      })
        .then((res) => {
          return res.json();
        })
        .then((data) => {
          console.log(data);
        });

Axios

// axios.get("http://127.0.01:5000/douban?page=1").then((Response) => {
    //   console.log(Response.data);
    // });
    //同源策略问题
    // axios.get("http://192.168.18.7:5000/douban?page=1").then((Response) => {
    //   console.log(Response.data);
    // });
    axios
      .get(
        "https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId=100009044581&score=0&sortType=5&page=1&pageSize=10&isShadowSku=0&rid=0&fold=1"
      )
      .then((Response) => {
        console.log(Response.data);
      });

    // axios.post("http://www.httpbin.org/post", { page: 1 }).then((Response) => {
    //   console.log(Response.data);
    // });

微信小程序

四种文件

  • wxml – html
    组件换名字 增加一些集成功能组件(swiper轮播图)
  • wxss – css
    选择器部分支持 rpx替换px
  • js – js
    页面生命周期 小程序生命周期 事件 wx_api
  • json – 无
    小程序全局配置 页面的配置

常用组件

view – div
text – p span
input – input
image – img
navigator – a
button --button
scroll-view – 无
swiper+swiper-item – 无

模板语法

数据绑定
{{data}}
条件渲染
wx:if wx:elif wx:else
循环渲染
wx:for=“{{arr}}” 默认的两个变量 item index
模板渲染
template

API

数据处理

  • this.data 获取绑定数据
  • this.setData() 修改绑定数据

小程序的Ajax

  • wx:request

页面跳转

  • wx.switchTab
  • wx.reLanuch
  • wx.redirectTo
  • wx.navigateTo
  • wx.navigateBack

修改配置

  • wx.setNavigationBarTitle
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值