vue 嵌套 HTML文件 (iframe)

文章讲述了在Vue项目里遇到iframe加载public/static下文件返回404的错误。问题的原因是打包后public为根目录,不需要额外添加public路径。解决方案是直接以/static/引用文件,如:<iframesrc=/static/MjMwMjA5MjU2OTgxNDkw.html...></iframe>。
摘要由CSDN通过智能技术生成

一、问题

把要引入的文件MjMwMjA5MjU2OTgxNDkw.html放在了public的static下面,在iframe标签的src里面引入该文件,但是页面上是一直显示404

二、源代码

三、解决办法

1.原因:在vue里面打包好的项目就以public为根目录的,所以src直接引用即可,不能再加public。

2.修改后的代码(其余代码不变),这样就完成了

 <iframe src="/static/MjMwMjA5MjU2OTgxNDkw.html" name="iframeDemo"   frameborder="0" style="width: 100%;height:700px;"></iframe>

你可以使用Vue Router来实现在Vue应用中嵌套HTML页面,而不使用iframe。以下是一个简单的示例: 首先,你需要安装Vue Router: ``` npm install vue-router ``` 然后,在你的Vue应用的入口文件(通常是`main.js`)中,导入Vue Router并配置路由: ```javascript import Vue from 'vue' import VueRouter from 'vue-router' Vue.use(VueRouter) const routes = [ { path: '/page1', name: 'Page1', component: () => import('./components/Page1.vue') }, { path: '/page2', name: 'Page2', component: () => import('./components/Page2.vue') }, // 其他页面路由配置... ] const router = new VueRouter({ mode: 'history', routes }) new Vue({ router, render: h => h(App) }).$mount('#app') ``` 在上面的代码中,我们通过`import`语句引入了两个组件`Page1.vue`和`Page2.vue`,并将它们分别与路由路径`/page1`和`/page2`关联起来。 接下来,在你的Vue组件中,可以使用`<router-view>`标签来渲染嵌套HTML页面。例如,在一个名为`App.vue`的组件中: ```vue <template> <div> <h1>My App</h1> <router-view></router-view> </div> </template> <script> export default { name: 'App', } </script> ``` 最后,在`Page1.vue`和`Page2.vue`组件中,你可以编写嵌套HTML代码: ```vue <template> <div> <h2>Page 1</h2> <!-- 嵌套HTML代码 --> </div> </template> <script> export default { name: 'Page1', } </script> ``` 这样,当用户访问`/page1`时,Vue Router会将`Page1.vue`组件渲染到`<router-view>`标签中,从而实现在Vue应用中嵌套HTML页面的效果。 希望对你有所帮助!如有任何问题,请随时向我提问。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值