小知识

Vue.prototype和Vue.use的区别

这个是全局可以通过Vue对象获取serring的值
Vue.prototype.$settings = settings; 这个是配置全局环境,不需要取用,就已经存在了
Vue.use(ElementUI);

配置全局样式

1.在assets里创建样式

注意

样式不能直接控制router-link标签,但是可以控制a标签,因为router-link最终会在浏览器渲染成a标签

2.配置全局css样式

// import '@/assets/css/global.css'
require('@/assets/css/global.css');
推荐使用第二种,因为第二种是函数,它的容错率高

配置全局js

以配置公共url为例子

1.在assets里创建js文件

export default {
base_url: 'http://localhost:8000',
}

2.配置全局js

import settings from '@/assets/js/settings'
Vue.prototype.$settings = settings; //调用的时候
this.$setting #一般可以用在数据请求
$.ajax({
url: this.$settings.base_url + '/cars/',
type: 'get',
success(response) {
console.log(response)
}
});

单页面数据库-store

配置默认值

在store的index.js中

    state: {
car:{
name:"待定",
price:"0"
}
},

使用

在任何一个组件逻辑中:this.$store.state.car 访问或是修改
在任何一个组件模板中:$store.state.car 访问或是修改

注意

界面刷新数据就会重置到初始值,所以这个数据库更适合用在移动端的开发

配置Element ui

安装

到项目所在目录执行

cnpm install element-ui

配置全局环境

在main.js里配置

import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css'; Vue.use(ElementUI);

this问题

函数中的this

面向对象函数:this为调用者

面向过程和面向对象:this可能为调用者

面向过程:没有this(箭头函数)

正常写法

        created(){
//这个this是vue对象,调用ele的组件,所以在ele组件内是拿不到vue对象的
this.$message({
message:'这个ele的弹出框',
type:'success',
duration:'1000',
onClose(){
//这里没有拿到ele对象,为undefind,这个方法既属于面向过程也属于面向对象所以this异常
alert(this)
}
})
}

在ele组件内部获取vue对象

1.在外部定义个变量存储vue的this

        created(){
let zx=this
this.$message({
message:'这个ele的弹出框',
type:'success',
duration:'1000',
onClose(){
alert(zx)
}
})
}

2.使用箭头函数

因为使用箭头函数,函数内部根本没有this,就会往外找

        created(){
this.$message({
message:'这个ele的弹出框',
type:'success',
duration:'1000',
onClose:()=>{
alert(this)
}
})
}

vue配置bootstrap

安装jquery

cnpm install jquery

安装bootstrap

cnpm install bootstrap@3

配置环境

// 加载bs的逻辑
import "bootstrap"
//配置bs的样式
import "bootstrap/dist/css/bootstrap.css"

配置jquery

如果项目没有默认生成项目配置文件vue.config.js,那么就自己手动新建

// 修改该文件内容后,只有重启,才能同步配置
const webpack = require("webpack"); module.exports = {
configureWebpack: {
plugins: [
new webpack.ProvidePlugin({
$: "jquery",
jQuery: "jquery",
"window.$": "jquery",
"window.jQuery": "jquery",
Popper: ["popper.js", "default"]
})
]
}
};

前后端分离-数据请求

首先不推荐使用jq的ajax,因为它的特点是dom操作有点不合适

axios

安装

cnpm install axios

配置

main.js配置

import Axios from 'axios'
Vue.prototype.axios = Axios;

使用

注意,get只会使用params传参

而post两个都会使用

            this.axios({
url:this.$settings.base_url+'/cars/',
method:'get',
params:{
//url凭借的数据
},
data:{
//请求携带的数据
}
}).then(response => {
this.cars_data = response.data
}).catch(error =>{
alert(error)
})

django跨域问题

安装插件

pip intstall django-cors-headers

配置

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

关于CSRF问题

因为前后端分离,界面不由后端提供,所以无法支持csrf,可以通过其他方式来保障安全,所以django中的csrf的中间件可以直接注释掉

vue使用cookies

安装

cnpm install vue-cookies

配置环境

import Cookies from 'vue-cookies'
Vue.prototype.$cookies = Cookies;

设置cookies

//设置
this.$cookies.set('token', token, 2 * 24 * 3600 * 365);
//删除
this.$cookies.remove('token');

Vue各种配置的更多相关文章

  1. vue全局配置----小白基础篇

    今天学习vue全局配置.希望帮助我们去了解vue的全局配置,快速开发. Vue.config是vue的全局配置对象.包含Vue的所有全局属性: silent:boolean(默认值:false)--- ...

  2. vue环境配置 vue-cli脚手架

    vue 环境配置步骤: 第一步: 在官网下载node,Node  下载地址 http://nodejs.cn/ 并安装node.检测node是否安装成功, 按 “windows+r”  进入cmd命令 ...

  3. 如何在你的Vue项目配置vux

    做移动端项目的话vue现在是首要的选择,足够轻便,文档足够全,当然用的人多,项目中遇到的坑别人可能也遇到过,解决起来也比较方便,至于在开发中做需要的移动端组件库,个人比较推崇vux. 其实项目里组件库 ...

  4. vue环境配置脚手架环境搭建vue工程目录

    首先在初始化一个vue项目之前,我们需要下载node.js,并且安装! 下载地址: nodejs.cn/download 安装完成之后,windows+r 运行命令 cmd  输入node -v  检 ...

  5. vue路由配置,vue子路由配置

    上一篇关于vue环境配置已经写好了!按照操作就行了! 现在一个项目已经部署完成,接下来我们从路由开始! 还记得在初始化项目的时候,有提示是否需要安装vue-router,对没错,vue中路由全靠它! ...

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

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

  7. vue如何配置路由 、获取路由的参数、部分刷新页面、缓存页面

    vue如何配置路由 .获取路由的参数.部分刷新页面.缓存页面:http://www.mamicode.com/info-detail-1941546.html vue-router传递参数的几种方式: ...

  8. 2、Vue实战-配置篇-npm配置

    引言: 如果刚开始使用 vue 并不了解 nodejs.npm 相关知识可以看我上一篇的实践,快速入门了解实战知识树. Vue实战-入门篇 上篇反思: 1.新的关注点:开发 vue 模板.如何使用本地 ...

  9. Vue插件配置和 后台交互

    Vue插件配置和 后台交互 一.全局配置静态文件(csss, js..) 1.1 全局配置css文件 创建css文件 在main.js配置css文件 // 配置全局css样式 // 方式一 impor ...

  10. vue基本配置和生命周期

    Vue的实例是Vue框架的入口,其实也就是前端的ViewModel,它包含了页面中的业务逻辑处理.数据模型等,当然它也有自己的一系列的生命周期的事件钩子,辅助我们进行对整个Vue实例生成.编译.挂着. ...

随机推荐

  1. *args和**kwargs的作用

    ∗args的作用: *的作用有2个 打包参数(pack)和拆分参数(unpack) 函数接受实参时,按顺序分配给函数形参,如果遇到带∗的形参,那么就把还未分配出去的实参以元组形式打包(pack),分配 ...

  2. vue学习之插槽

    插槽 插槽(Slot)是Vue提出来的一个概念,正如名字一样,插槽用于决定将所携带的内容,插入到指定的某个位置,从而使模板分块,具有模块化的特质和更大的重用性. 个人理解:我感觉插槽就是父组件控制插槽 ...

  3. [考试反思]1109csp-s模拟测试107:低能

    诶一看这不是水题AK场吗?然后80分钟就拿到了285分. 然后,对拍?还是卡T2常数?还是想T2正解? 于是上述三项我依次进行了. 前两项让我的分数丝毫不变但是吃掉了我一个多小时的时间. 卡常卡的也不 ...

  4. [考试反思]1007csp-s模拟测试63:朦胧

    别找了原来没有写过叫<朦胧>的我check过了.(慌的一匹) 总算是比较早的改完了一套题. 但是考的是个啥啊... 前两道题都很卡常导致我想到了正解但是都放弃了. 2e8的复杂度怎么可能能 ...

  5. CSPS模拟 58

    爆炸 没算内存见祖宗 为什么偏偏这次卡内存我没算 T1 HashMap各种水 T2 智障背包!但是卡内存! T3 Dashspeed 考试用点分治+线段树水到了80 实际上是个没见过的套路题 在之前的 ...

  6. 曹工杂谈:为什么很少需要改Spring源码,因为扩展点太多了,说说Spring的后置处理器

    前言 最近发了好几篇,都是覆盖框架源码,但是spring的代码,我是从没覆盖过,毕竟,如果方便扩展,没谁想去改源码,而spring就是不需要改源码的那个,真的是"对扩展开放,对修改关闭&qu ...

  7. NFS共享目录

    NFS(Network Files System)即网络文件系统 NFS文件系统协议允许网络中的主机通过TCP/IP协议进行资源共享,NFS客户端可以像使用本地资源一样读写远端NFS服务端的资料,需要 ...

  8. MySQL 执行计划详解

    我们经常使用 MySQL 的执行计划来查看 SQL 语句的执行效率,接下来分析执行计划的各个显示内容. EXPLAIN SELECT * FROM users WHERE id IN (SELECT ...

  9. PHP压缩文件夹的方法

    PHP压缩文件夹的方法<pre> public function addFileToZip($path, $zip) { $handler = opendir($path); //打开当前 ...

  10. go中的数据结构通道-channel

    1. channel的使用 很多文章介绍channel的时候都和并发揉在一起,这里我想把它当做一种数据结构来单独介绍它的实现原理. channel,通道.golang中用于数据传递的一种数据结构.是g ...