首先贴上官方文档:
https://lison16.github.io/iview-admin-doc/#/
请仔细阅读!
准备步骤与一些你可能会遇到的问题:
1.修改api请求基础路径
文件位置:src\config\index.js
/**
* @description api请求基础路径
*/
baseUrl: {
dev: '后端接口地址(本地环境)',
pro: '后端接口地址(生产环境)'
},
2.解决跨域问题
(什么是跨域问题:https://segmentfault.com/a/1190000015597029?utm_source=tag-newest)
- 解决方法选择: nginx配置
//举例说明 conf文件配置 (文件放置为nginx安装目录下的conf-servers文件中)
server {
listen 80;
server_name admin.com;
location / {
proxy_pass http://127.0.0.1:8080/;
}
location /web/ {
proxy_pass http://127.0.0.1:8080/;
}
location /admin/ {
proxy_pass http://127.0.0.1:8288/; // 转接的接口地址,配置完毕之后需要在上一步的baseUrl做相应修改
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
//同时修改hosts文件 文件位置:c:\windows\system32\drivers\etc
在最后添上 127.0.0.1 admin.com // 127.0.0.1为localhost
完成以上两步你就可以开始进行开发啦!
下面是你的可能会遇到的问题与疑惑:
3.首页跳转失效
可能你也是这个原因:router.beforeEach((to, from, next)的跳转条件不满足,需要根据自己的情况做稍许修改。
在修改的过程中你可能也会遇到死循环:
https://www.cnblogs.com/tugenhua0707/p/10125535.html(具体原因)
简单来说获取不到token之类信息,一直跳转至登录页,循环往复,死循环。
解决办法:
先注释掉登录“token”的逻辑部分,后面根据需求调整,登录接口“开白名单”
4.将token放入接口头中
(参考:https://blog.51cto.com/hequan/2316979?source=dra)
// 文件位置:src\libs\axios.js
getInsideConfig (url) {
const config = {
baseURL: this.baseUrl,
headers: {
//
}
}
if(url!== 'login'){
config.headers['Authorization'] = store.state.user.token
}
return config
}
以上是我在开发中的一些心得与经历,有一些粗糙,有问题欢迎指出。