网站首页 > 技术文章 正文
Vue与Element走过的坑。。。。带上Axios
出处:http://www.cnblogs.com/wtzl/p/9791398.html
1.Axios中post传参数组(java后端接收数组)
虽然源数据本身就是数组,但是传参时会自动变成key:数值或者服务器无法接收的对象,如下
如果不仔细看,很容易认为这两种情况没毛病。。(后端不背锅,哈哈)
第一种方式转化为数组:JSON.stringify
_this.item.push(row.id);//此处_this.item是数组
const params = new URLSearchParams();
params.append("item",JSON.stringify( _this.item));
第二种方式:此处贴上代码(解释不喜勿喷)
transformRequest: function (data) {
data = qs.stringify({
item: JSON.stringify(_this.item)
});
return data
}
最后真正传参的格式:
2.Element篇
1.el-table实现单击行且高亮执行赋值
css别忘了。。。。
2.el-table实现表头居中且内容居中
3.el-cascader获取点击的各级数据
val==》要接收的空数组(绑定的数据)opt==》需要遍历数据源
配合@change使用:
就能实时获取想要的数据。。。。。至于如何清空,直接将v-model绑定的数据清空即可。。。
4.el-menu动态生成(递归)
a.准备树形数据源(字段按个人需求,这里给出楼主的思路)
b.实现el-menu里包含的el-submenu(个人是直接抽取出来,通过props赋值)
index有个坑,,好像得变成字符串,所以加上“”,其实本来就是字符串。。。。这里使用得是递归思想生成dom
c:el-menu中使用
准备好第一步得数据源即可。。。。
5:el-table中使用el-switch(附带此时事件方法)
这里绑定数字得前面加上 :。。
6.树形表格,网上找了好多个人封装的,总是有些bug和其它问题,最后想到了vue版的Easyui,果然还是Easyui处理数据强大。。直接上图展示
此处数据源也是树形数据,采用递归完成,前面的图标是通过修改源码新增的几个。。
7.css问题
关于每个.vue中css,之前一直采用scope,,,但是打包之后发现失效了,,最后采用lang=scss方式,需要npm下载。。,最外层样式就是每个模板的顶级class括起来,这样也就避免了css全局污染啥的。。。。
8.跨域问题解决。。。
配置之后的请求缩写。。
配置config中index即可。。。但是产生了打包之后不存在跨域,,,,(难道打包之前把一个个请求的url修改。。。。那会封吧)
解决方案:
1.配置config中dev.env.js文件
这里/api就是开发环境刚刚代理跨域的地址
2.配置config中prod.env.js文件
这里配置一个相对路径,就能自由切换各种环境。。。。
3.设置请求时的路径,这里使用axios
这里没封装,简单的写一下。。。。主要第一行和第四行
此时请求的写法:
api没了,,此时就配好了开发时跨域请求和打包之后的不跨域,,,webpack打包时会自动切换。。。
暂时就这么多,好多碰到的问题暂时没想起来。。。。。。
猜你喜欢
- 2024-10-17 Vue实战072:CSS样式中的各种深度作用选择器的使用
- 2024-10-17 在Vue开发中出现对话框被遮罩层挡住问题的解决教程
- 2024-10-17 vue里的el-radio怎么监听状态(vue如何监听localstorage)
- 2024-10-17 vue+element 组件el-tab-pane导致router-view加载多次
- 2024-10-17 vue中的select下拉框多选以及多选数据回显
- 2024-10-17 如何让vue+element-ui实现表格checkbox单选
- 2024-10-17 vue+element-ui中的el-table-column使用v-if导致位置错乱
- 2024-10-17 Vue3问题:如何实现el-table内容超出省略提示?第3条很少有人会
- 2024-10-17 Vue封装ajax的代码示例详解(vue 封装 axios)
- 2024-10-17 (建议收藏) | 企业中Vue.js最常用的第三方插件
- 最近发表
- 标签列表
-
- cmd/c (64)
- c++中::是什么意思 (83)
- 标签用于 (65)
- 主键只能有一个吗 (66)
- c#console.writeline不显示 (75)
- pythoncase语句 (81)
- es6includes (73)
- sqlset (64)
- windowsscripthost (67)
- apt-getinstall-y (86)
- node_modules怎么生成 (76)
- chromepost (65)
- c++int转char (75)
- static函数和普通函数 (76)
- el-date-picker开始日期早于结束日期 (70)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- & (66)
- java (73)
- js数组插入 (83)
- linux删除一个文件夹 (65)
- mac安装java (72)
- eacces (67)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)