定制小程序开发axios拦截器

axios拦截器(需要背诵)

首先, npm i axios

  1. 对ajax定制小程序开发请求进行拦截
    1. 定制小程序开发在请求头添加token
  2. 对ajax定制小程序开发响应数据进行拦截
    1. 定制小程序开发统一处理请求失败的情况, 这样就不需要在每个组件里处理失败的情况
    2. 有些接口需要登录才能访问, 在没登录的情况下跳转到登录页面
  1. /**
  2. * 配置axios的拦截器
  3. */
  4. let env = 'prod'; //dev开发, test测试, prod生产
  5. let baseURL;
  6. if(env === 'dev') {
  7. baseURL = 'http://localhost:3003';
  8. } else if (env === 'test') {
  9. baseURL = 'http://test.huruqing.cn:3003';
  10. } else {
  11. baseURL = 'http://huruqing.cn:3003';
  12. }
  13. import axios from 'axios';
  14. const service = axios.create({
  15. baseURL,
  16. timeout: 30000
  17. })
  18. // 配置请求拦截
  19. service.interceptors.request.use((config) => {
  20. console.log(config);
  21. // 添加token
  22. // config.headers["token"] = "gg12j3h4ghj2g134kj1g234gh12jh34k12h34g12kjh34kh1g";
  23. return config;
  24. },
  25. (error) => {
  26. alert('发送请求失败')
  27. }
  28. );
  29. // 配置响应拦截
  30. service.interceptors.response.use(
  31. (res) => {
  32. if (res.data.code == 666) {
  33. return res.data;
  34. } else {
  35. alert(res.data.msg);
  36. }
  37. },
  38. (error) => {
  39. alert("网络异常,请稍后再试");
  40. }
  41. );
  42. const get = (url,data) => {
  43. return service.get(url,{params:data});
  44. }
  45. export default {
  46. ...service,
  47. get
  48. };

(八) 父子组件通信(背诵)

知识点(背诵):

  1. 父传子: 父组件通过(绑定)属性的方式传数据给子组件, 子组件使用props接收数据
  2. 子传父: 父组件在子组件上绑定一个自定义事件, 子组件通过$emit触发该自定义事件, 同时可以传入数据

1.

  • 父组件给子组件绑定属性, 属性的值是需要传递的信息
  • 子组件通过props接收父组件的信息
  1. // 例子1: 使用普通属性
  2. // demo.vue
  3. <template>
  4. <div>
  5. <h3>父组件</h3>
  6. <hr />
  7. <Son msg="hello world" username="张三"/>
  8. </div>
  9. </template>
  10. <script>
  11. import Son from "./Son";
  12. export default {
  13. components: {
  14. Son,
  15. },
  16. };
  17. </script>
  18. // Son.vue
  19. <template>
  20. <div>
  21. <h4>子组件</h4>
  22. <p>msg: {{ msg }}</p>
  23. <p>username: {{ username }}</p>
  24. </div>
  25. </template>
  26. <script>
  27. export default {
  28. props: ["msg", "username"],
  29. };
  30. </script>
  31. // 例子2: 使用绑定属性(可传变量)
  32. // demo.vue
  33. <template>
  34. <div>
  35. <h3>父组件</h3>
  36. <hr />
  37. <Son :msg="msg" :username="username" />
  38. </div>
  39. </template>
  40. <script>
  41. import Son from "./Son";
  42. export default {
  43. components: {
  44. Son,
  45. },
  46. data() {
  47. return {
  48. msg: '哈哈哈',
  49. username: '李四'
  50. };
  51. },
  52. };
  53. </script>
  54. // Son.vue
  55. <template>
  56. <div>
  57. <h4>子组件</h4>
  58. <p>msg: {{ msg }}</p>
  59. <p>username: {{ username }}</p>
  60. </div>
  61. </template>
  62. <script>
  63. export default {
  64. props: ["msg", "username"],
  65. };
  66. </script>

父传子实践: 把首页拆分为多个组件 技巧: 如果某个部分只是做展示用, 尽量把它变成子组件

2.

  1. 父组件在子组件上绑定一个自定义事件(事件名称我们自己定义的, vue本身是没有这个事件的)
  2. 父组件给自定义事件绑定一个函数, 这个函数可以接受来自子组件的数据
  3. 子组件使用$emit触发(调用)该事件, 并把数据以参数形式传给父组件
  1. // 例子1: 一个简单的例子
  2. // demo.vue
  3. <template>
  4. <div>
  5. <h3>父组件</h3>
  6. <hr />
  7. <Son @aaa="say"/>
  8. </div>
  9. </template>
  10. <script>
  11. import Son from "./Son";
  12. export default {
  13. components: {
  14. Son,
  15. },
  16. data() {
  17. return {
  18. };
  19. },
  20. methods: {
  21. say(data) {
  22. alert(data)
  23. }
  24. }
  25. };
  26. </script>
  27. // 子组件
  28. <template>
  29. <div>
  30. <h4>子组件</h4>
  31. <button @click="$emit('aaa','我是子组件')">点击</button>
  32. </div>
  33. </template>
  34. <script>
  35. export default {
  36. props: ["msg", "username"],
  37. };
  38. </script>

网站建设定制开发 软件系统开发定制 定制软件开发 软件开发定制 定制app开发 app开发定制 app开发定制公司 电商商城定制开发 定制小程序开发 定制开发小程序 客户管理系统开发定制 定制网站 定制开发 crm开发定制 开发公司 小程序开发定制 定制软件 收款定制开发 企业网站定制开发 定制化开发 android系统定制开发 定制小程序开发费用 定制设计 专注app软件定制开发 软件开发定制定制 知名网站建设定制 软件定制开发供应商 应用系统定制开发 软件系统定制开发 企业管理系统定制开发 系统定制开发