一、Vue的ajax插件:axios

  1. 安装插件

    >: cnpm install axios // 一定要在项目目录下执行该命令
  2. 在main.js中配置

    import axios from 'axios'
    Vue.prototype.$axios = axios;  // JS原型、全局访问axios插件
  3. axios的使用

    this.$axios({
        url:'http://127.0.0.1:8000/cars',  // 后端url
        methods:'get',  // 请求方式,相当于ajax中的type
    }).then(respons=>{  // then,回调函数,相当于ajax中的success,必须用箭头函数,this可以指代axios
        this.cars = response.data
    }).catch(error=>{  // 捕捉错误、网路状态码为4xx、5xx
        console.log(error)
    })

二、Django中的CORS跨域问题

(一)同源策略

  1. 同源:http协议相同、ip服务器地址相同、app应用端口相同
  2. 跨域:协议、ip地址、应用端口有一个不同,就是跨域
  3. Django默认是同源策略,存在跨域问题
  • Vue项目中

    1. 浏览器请求的是vue项目的域名和端口
    2. Vue项目中再去请求后端Django的域名端口
    3. 后端再返回相应数据

    因此会产生跨域问题

(二)解决方式(cors模块)

  1. 下载安装cors模块

    >: pip install django-cors-headers
  2. 注册cors模块(settings.py文件中)

    # settings.py
    INSTALLED_APPS = [
         'corsheaders'
    ]
  3. 配置中间件(settings.py文件中)

    # settings.py
    MIDDLEWARE = [
        'corsheaders.middleware.CorsMiddleware'
    ]
  4. 开启允许跨越(settings.py文件中)

    # settings.py
    CORS_ORIGIN_ALLOW_ALL = True

三、Vue配置ElementUI

ElementUI 是一套基于Vue2.0的快速搭建网站的组件库,类似Bootstrap的一种UI框架

  1. 运行安装插件命令(必须在项目目录下运行)

    >: cnpm install element-ui 
  2. main.js文件中配置

    import ElementUI from 'element-ui';
    import 'element-ui/lib/theme-chalk/index.css';
    Vue.use(ElementUI);
  3. ElementUI文档官网中粘贴复制使用

四、Vue配置jQuery和Bootstarp

(一)配置jQuery

  1. 安装jQuery

    >: cnpm install jquery
  2. vue.config.js文件中配置(没有可手动新建)

    const webpack = require("webpack");
    
    module.exports = {
        configureWebpack: {
            plugins: [
                new webpack.ProvidePlugin({
                    $: "jquery",
                    jQuery: "jquery",
                    "window.jQuery": "jquery",
                    Popper: ["popper.js", "default"]
                })
            ]
             }
    };

(二)配置Bootstrap

  1. 安装Bootstrap

    >: cnpm install bootstrap@3  // @3表示版本号,在终端中给python解释器安装则是 pip install bootstrap==3 ,3默认是3点几版本中最稳定的那个版本
  2. main.js文件中配置

    import "bootstrap"
    import "bootstrap/dist/css/bootstrap.css"

(day69)axios、配置ElementUI、配置jQuery和Bootstrap、Django中的CORS问题的更多相关文章

  1. vue项目搭建和开发流程 vue项目配置ElementUI、jQuery和Bootstrap环境

    目录 一.VUE项目的搭建 1. 环境搭建 2. 项目的创建和启动 二. 开发项目 1. 配置vue项目启动功能 2. 开发vue项目 (1)项目文件的作用 (2)vue项目开发流程 (3)vue项目 ...

  2. 项目前端 - vue配置 | axios配置 | cookies配置 | element-ui配置 | bootstrap配置

    vue项目创建 环境 1.傻瓜式安装node: 官网下载:https://nodejs.org/zh-cn/ ​ 2.安装cnpm: >: npm install -g cnpm --regis ...

  3. 第三章、vue-项目前端 - vue配置 | axios配置 | cookies配置 | element-ui配置 | bootstrap配置

    目录 vue项目创建 环境 创建项目 重构项目目录 文件修订:目录中非配置文件的多余文件可以移除 全局配置:全局样式.配置文件 axios前后台交互 cookies操作 element-ui页面组件框 ...

  4. Django中redis的使用方法(包括安装、配置、启动)

    一.安装redis: 1.下载: wget http://download.redis.io/releases/redis-3.2.8.tar.gz 2.解压 tar -zxvf redis-3.2. ...

  5. 在Django中使用redis:包括安装、配置、启动。

    一.安装redis: 1.下载: wget http://download.redis.io/releases/redis-3.2.8.tar.gz 2.解压 tar -zxvf redis-.tar ...

  6. (转)在 vue-cli 脚手架中引用 jQuery、bootstrap 以及使用 sass、less 编写 css [vue-cli配置入门]

    写在前面: 本文是vue-手摸手教你使用vue-cli脚手架-详细步骤图文解析之后,又一篇关于vue-cli脚手架配置相关的文章,因为有些文章步骤不够清晰,当时我引入JQuery.bootstrap的 ...

  7. Axios的详细配置和相关使用

    Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中. Features 从浏览器中创建 XMLHttpRequests 从 node.js 创建 http  ...

  8. vue.js+koa2项目实战(一)创建项目和elementUI配置

    前端采用vuex+element-ui: 后端采用koa2+restfulAPI+sequlize: (一)项目介绍 宠物社区 1.社区 2.好友 3.说说 4.宠粮 5.健康 (二)项目框架 1.V ...

  9. axios统一拦截配置

    在vue项目中,和后台进行数据交互使用axios.要想统一处理所有的http请求和响应,就需要使用axios的拦截器.通过配置http response inteceptor 统一拦截后台的接口数据, ...

随机推荐

  1. Day 08 可变与不可变对象/列表与字典内置方法

    目录 可变对象与不可变对象 可变对象 不可变对象 列表的内置方法 字典内置方法 可变对象与不可变对象 可变对象 对象指向的内存中的值会改变,当更改这个变量的时候,还是指向原来内存中的值,并且在原来的内 ...

  2. Django(一):url路由配置和模板渲染

    urls.py路由用法 url基本概念 url格式 urls.py的作用 url解析过程 include的作用 kwarg的作用 name的作用 URL概念 URL(Uniform Resoure L ...

  3. redis(5)--redis集群之哨兵机制

    哨兵机制 在前面讲的master/slave模式,在一个典型的一主多从的系统中,slave在整个体系中起到了数据冗余备份和读写分离的作用.当master遇到异常终端后,需要从slave中选举一个新的m ...

  4. JS中的深拷贝和浅拷贝

    浅拷贝 浅拷贝是拷贝第一层的拷贝 使用Object.assign解决这个问题. let a = { age: 1 } let b = Object.assign({}, a) a.age = 2 co ...

  5. python学习-caculator

    # 运算符操作# 算术运算符num_a = 100num_b = 5000 # 加法print(num_a + num_b)# 减法print(num_a - num_b)# 乘法 *print(nu ...

  6. Chrome浏览器字体设置低于12px无效

    在Chrome 在IE11                 本来以为是padding问题导致出现左右两边的底部不在同一直线(在IE上),在Chrome显示是正常的,查了一下,IE11和Chrome都是 ...

  7. 创建基于ASP.NET core 3.1 的RazorPagesMovie项目(二)-应用模型类配合基架生成工具生成Razor页面

    本节中,将学习添加用于管理跨平台的SQLLite数据库中的电影的类Movie.从ASP.NET core 模板创建的应用使用SQLLite数据库. 应用模型类(Movie)配合Entity Frame ...

  8. C#8.0中新特性之一:结构readonly成员

    结构struct成员支持readonly,用来限制被其修饰的成员不会改变结构的内部状态.加上7.2版本添加的readonly struct和ref readonly方法返回以及之前的字段声明修饰作用, ...

  9. ubuntu1604环境下mariadb启动卡住报错和apparmor基本使用

    问题描述:Ubuntu 1604 新环境下使用apt安装的mariadb10版本,结果第二天就起不来了,很是郁闷 启动时会卡住,当时就慌了,这什么情况啊,昨天好好的今天就起不来了,过了一会儿就有返回信 ...

  10. Angular 彻底解决 Dropdown 在 Safari 上无法自动关闭的问题

    之前在 Safari 上用 focus 事件来实现 Dropdown 下拉菜单,结果在 iOS 上不兼容. 尝试了 MDN 和 stack over flow 上各种奇技淫巧,然而在 iOS 上全都败 ...