zoukankan      html  css  js  c++  java
  • VUE前后台分离

    VUE前后台分离

    配置js环境

    jQuery

    >: cnpm install jquery
    

    vue/cli 3 配置jQuery:在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

    >: cnpm install bootstrap@3
    

    vue/cli 3 配置BootStrap:在main.js中配置

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

    分离的前后台交互

    后台跨域处理

    安装插件

    >: pip install django-cors-headers
    
    插件参考地址:https://github.com/ottoyiu/django-cors-headers/
    

    项目配置:dev.py

    # 注册app
    INSTALLED_APPS = [
    	...
    	'corsheaders'
    ]
    
    # 添加中间件
    MIDDLEWARE = [
    	...
    	'corsheaders.middleware.CorsMiddleware'
    ]
    
    # 允许跨域源
    CORS_ORIGIN_ALLOW_ALL = True
    

    总结

    """
    1、vue项目配置全局css文件:在main.js中用import导入或是require()加载 .css 文件
    	assets/css/global.css
    	import '@/assets/css/global.css' | require('@/assets/css/global.css')
    
    2、vue项目配置全局js文件:在main.js中用import导入 .js 文件,并将其设置给 Vue 原型
    	settings.js => export default {base_url='http://127.0.0.1:8000'}
    	import settings from '@/assets/js/settings.js'
    	Vue.prototype.$settings = settings => this.$settings.base_url
    	
    3、vuex提供的store仓库存储,可以完成组件间的传参(了解)
    	store/index.js => state: {num: 0}
    	this.$store.state.num
    
    4、vue项目配置axios可以完成前后台交互:this.$axios({}).then(response=>{}).catch(error=>{})
    	import axios from 'axios'
    	Vue.prototype.$axios = axios
    	this.$axios({
    		url: '后台接口',
    		method: 'get|post',
    		params: {},
    		data: {},
    		headers: {},
    	}).then(response=>{
    		response.data
    	}).catch(error=>{
    		error.response.data
    	})
    
    5、django利用django-cors-headers插件解决前后台分类项目跨越问题(重点)
    	注册corsheaders => 添加中间件 => 允许跨越
    
    6、前台两种提交数据的方式:url拼接参数,数据包参数
    7、前后台分离,后台登录通过的token会返回给前台,前台自己处理存储在cookie中:vue-cookies插件操作cookie
    	token = response.data.token
    	
    	this.$cookies.set(k, v, exp);
    	this.$cookies.get(k);
    	this.$cookies.remove(k);
    	
    8、全局应用配置element-ui、bootstrap
    	import ElementUi from 'element-ui'
    	Vue.use(ElementUi)
    """
    
  • 相关阅读:
    【实验】利用系统自带脚本utlsampl.sql创建scott用户及样本数据
    有哪些优秀的沟通思路?
    srand()以及rand()函数用法
    微信公众号
    Sublime Text 3 全程详细图文原创教程(持续更新中。。。)
    Android应用的缓冲界面启动界面
    ListView技巧
    android线性布局参数
    CocoaPods的一波三则
    003.开发者账号异同
  • 原文地址:https://www.cnblogs.com/yanjiayi098-001/p/11885816.html
Copyright © 2011-2022 走看看