vue项目中怎样嵌入其它项目的页面
作者:yumihe
这篇文章主要介绍了vue项目中怎样嵌入其它项目的页面问题,具有很好 的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
vue项目嵌入其它项目的页面
通过iframe嵌入,src的路径在static中(vue-cli3在public)配置
编译打包时,不会将static/public里的文件编译,前端可修改index.js里的url
方式一
创建index.js,在入口页面中引入
static/urls/index.js
window.urlsPath = { statisticsUrl: 'http://xx.xx.xx.xx:80' }
入口index.html
// 注意引入js时的路径 // statis <script src="/static/urls/index.js"></script> // public <script src="./urls/index.js"></script>
statistics.js
<iframe src="url" frameborder="0" width="100%" height="100%"></iframe> created() { this.url = window.urlsPath.statisticsUrl + '#/dataStatistics?userId=' + sessionStorageGet('loginData').userId }
方式二
通过在main.js中请求json文件的方式,拿到url
new Vue({ router, store, render: h => h(App), created() { axios.get('/urls/urls.json').then(res=> { if(res.data.code === '0') { utils.sessionStorageSet('defaultConfig', res.data.data) } }) } }).$mount('#app');
以vue-cli3为例,public/urls/urls.json
{ "code":"0", "data":{ "statisticsUrl": "http://xx.xx.xx.xx:80" } }
vue嵌入本地html页面
问题描述:
向vue项目中嵌入html页面
失败原因:
代码结构不同,需要放到指定位置
解决:
把本地html、css\js\img都放到与src同级的public\static下
嵌入代码
<template> <div style="width: 100%"> <!--静态html资源--> <div> <iframe src="/static/demo01.html" scrolling="auto" frameborder="0" style="width: 100%;height: 900px;"></iframe> </div> </div> </template>
<script> export default { data() { return { } }, methods: { }, created() { } } </script>
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。