泸州微信公众号开发【泸州网络推广】泸州建站、泸州网站维护、泸州网页制作、泸州微信小程序代运营公司-网站优化-网站建设【企业网站制作|网页设计】- 高端网站建设 - 书生商友信息科技-

全国热线:400-111-6878

网站建设推广专家

泸州微信公众号开发【泸州网络推广】泸州建站、泸州网站维护、泸州网页制作、泸州微信小程序代运营公司

发表日期: 2021-06-03 15:28:06 浏览次数:120

泸州微信公众号开发【泸州网络推广】泸州建站、泸州网站维护、泸州网页制作、泸州微信小程序代运营公司


网站建设.jpg


泸州,古称“江阳”,别称酒城、江城 [75]  ,是四川省地级市,全国区域中心城市 [75]  ,川渝滇黔结合部区域中心城市和成渝地区双城经济圈南翼中心城市 [1]  、重要的商贸物流中心,长江上游重要的港口城市。截止2020年12月底,全市乡镇政区126个,面积12232.34平方公里。2020年末全市公安户籍登记户数158.09万户,户籍总人口507.95万人,其中乡村人口305.71万人,城镇人口202.24万人,户籍人口城镇化率39.8% [12]  ;2020年泸州市常住人口4254149人 [86]  。

泸州是国家历史文化名城,具有两千多年历史文化;西汉设江阳侯国;梁武帝大同年间建置泸州;泸州在宋代即为西南要会,明代即与成都、重庆三足鼎立,成为当时全国33个商业大都会之一。 [76]  形成了以名酒文化、生态文化、红色文化、历史文化、长江文化为代表的五大特色旅游资源;拥有国家4A级旅游景区7个,国家3A级旅游景区6个,国家2A级旅游景区9个。 [3-4]  [75] 

泸州是长江中上游地区第二大集装箱码头,四川第三大航空港 [77]  ;也是第三批国家新型城镇化综合试点地区、跨境电子商务综合试验区;世界级白酒产业基地,国家重要的以名优酒为主体的食品工业基地、循环型化工基地、清洁能源生产基地、国家高性能液压件高新技术产业化基地、国家9大工程机械生产基地之一。 [2] 

先后获得过联合国改善人居环境最佳范例奖(迪拜奖)、中国地级市民生发展100强、国家卫生城市、中国优秀旅游城市、国家森林城市、国家园林城市、全国文明城市、国家水生态文明城市等荣誉。 [5-6] 



概述

web端三大框架react、vue和angular,本篇教程介绍react的从入门到精通。

十、数据交互

官方文档

如何在 React 中发起 AJAX 请求?

在 React 开发中,你能使用任何你喜欢的 AJAX 库,比如社区比较流行的 Axios,jQuery AJAX,或者是浏览器内置的 window.fetch。

class MyComponent extends React.Component {    constructor(props) {        super(props);        this.state = {            error: null,            isLoaded: false,            items: []        };    }    componentDidMount() {        fetch("https://api.example.com/items")            .then(res => res.json())            .then(            (result) => {                this.setState({                    isLoaded: true,                    items: result.items          });            },            // 注意:需要在此处处理错误            // 而不是使用 catch() 去捕获错误            // 因为使用 catch 去捕获异常会掩盖掉组件本身可能产生的 bug            (error) => {                this.setState({                    isLoaded: true,                    error          });            }        )    }    render() {        const { error, isLoaded, items } = this.state;        if (error) {            return <div>Error: {error.message}</div>;        } else if (!isLoaded) {            return <div>Loading…</div>;        } else {            return (                <ul>                {items.map(item => (                 <li key={item.name}>                {item.name} {item.price}                </li>            ))}        </ul>        );    }}}

官方给出的是fetch发出的请求,但是追梦猪是从vue过来的所以喜欢axios请求,不过你也可以使用普通的jquery的$.ajax请求这样都是被允许的

当然也可以使用ajax的方法进行数据交互

$.ajax({    type: "POST",    url:"此处填url地址",    contentType: "application/json; charset=utf-8",    data: JSON.stringify("此处填header请求头"),    dataType: "json",    success: function (message){    }})

如果你是axios请求的爱好者使用如下:

文档目录

react.js从入门到精通(七)——数据交互

config.js存放公共的url请求路径

index.js封装的请求暴露文件

request.js存放axios的请求拦截和响应拦截

config.js代码如下;

/
统一定义接口,有利于维护
/

const URL= 'https://app.kpcx179.com/' ;//开发环境export default URL

根据自己需求定义请求的地址

request.js代码如下:

import axios from 'axios';axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded; charset=UTF-8'axios.interceptors.request.use(//请求参数设置    config => {        console.log(config)        if (localStorage.getItem('token')&&localStorage.getItem('token')!==undefined&&localStorage.getItem('token')!=='') {            config.headers.common['token'] = localStorage.getItem('token');        }else{            window.location.href='/#/login'        }        return config    },    err => {        return Promise.reject(err)    })axios.interceptors.response.use(//响应请求    config => {        console.log(config)        if (config.data.code==101046) {            window.location.href='/#/login'        }else{            if (localStorage.getItem('token')&&localStorage.getItem('token')!==undefined&&localStorage.getItem('token')!=='') {                localStorage.setItem('token', config.headers.token);            }        }        return config    },    err => {        return Promise.reject(err)    })export default axios

index.js代码如下:

import React from 'react';import request from './request';import config from './config';let  axios = {    get(url, params, headers) {        let options = {};        params && (options.params = params);        headers && (options.headers = headers);        return request.get(config+url, options);    },    post(url, params, headers) {        let options = {};        headers && (options.headers = headers);        return request.post(config+url, params, options);    }}React.$http = axios

在react脚手架创建的项目中,类似像axios请求这样的公共方法,需要给它设定到一个全局的方法中。|
对比vue,vue可以直接在main.js中直接Vue.prototype.$axios = function(){}这样的形式绑定全局的方法。这样就不用每一个vue文件都去引用axios这个文件了,也方便进行统一的管理。

那么react是不是也可以类似的在index.js中react.prototype绑定全局方法呢。答案是不行!!!

分析
直接在index.js中打印

console.log(React.prototype)

//undefined
和vue不一样,vue需要将vue new成对象才能使用并且每个vue文件直接通过this就能获取到vue对象上定义的东西。但是react不需要new成对象就可以直接使用。

方法
直接在index.js中

React.$axios = function () {}

绑定方法;然后每个子页面的js文件中React.$http 直接获取到这个方法

封装的方法如下图:

react.js从入门到精通(七)——数据交互

效果图如下:

react.js从入门到精通(七)——数据交互

如果你对上面的一无所知的话可以访问追梦猪git下载demo实现快捷开发,省掉安装的步骤

追梦猪react项目demo实例(https://github.com/jiawenguang/React-demo.git)

可以通过git clone方式下载项目结构。



泸州微信公众号开发泸州网络推广泸州建站、泸州网站维护、泸州网页制作、泸州微信小程序代运营公司

上一条:泸州网站制作【泸州网站优化】泸州建网站、泸州微信公众号运营、泸州网页设计、泸州微信小程序商城
下一条:泸州网站推广【泸州办理400电话】泸州SEO优化、泸州微信公众号APP客户端小程序开发、泸州网站托管、泸州APP开发
网站制作
小程序制作
网站优化
网站开发
400电话办理
网络推广
网站建设
网店装修
微信公众号开发
网页设计
网络公司
域名企业邮箱
服务器空间
网站案例报价
百科问答
编辑排版美工
App软件开发
百度推广
代运营托管
logo设计
网络全网营销
网站备案
网站定制
小程序开发公司
首页
电话
立即预约