vue组件向HTML文件传送数据,HTML向vue组件发送数据。vue组件与HTML文件间进行交互的方法。

最近的项目中,因为使用了云渲染的方式,需要用到原生的html文件,但是项目的前端又是用vue组件来写的。云渲染的api是在html文件里,但是项目的功能是在vue组件里,无法用传统的方式来传递交互数据,后来研究后找到了方法。(原理不清楚,好用就行)。

1,使用本地缓存。localStorage

这是个万能公式,适合数据量不大的传输,但是需要及时清理。数据量不大可以使用,但是因为存取占用资源较多,且需要定时清理,如果数据量大,存取操作不频繁,不建议使用。

2,HTML向vue组件传输

使用window.parent。

window.parent指的是当前窗口的父级窗口对象。在一个iframe或者一个通过window.open()打开的新窗口中,window.parent被用来访问iframe或者新窗口的父级窗口。通过window.parent,可以在父级窗口中操作子级窗口的DOM,也可以在子级窗口中调用父级窗口的函数。例如在一个iframe中,可以使用window.parent.document来访问包含iframe的页面的document对象。需要注意的是,如果当前窗口没有父级窗口,window.parent返回的是当前窗口对象本身。

使用方法:

在HTML文件中:

function dynamicTaskDynamicScene() {
				
					window.parent['setThis'](true,this)
					
				
			}

其中,setThis是给window存的一个实例,可以理解为存的名字,后面小括号里的参数,就是我们需要携带的参数,可以是多个,用逗号隔开。

然后在vue组件中获取参数的方法:

created() {
			window['setThis'] = (bnn,obj) => {
				console.log(bnn,obj)
}

我是在created中获取,也可以在其他生命周期中获取。

3:vue向HTML发送参数。

使用window.frames。

window.frames属性返回与当前窗口相关联的所有框架(frames)的窗口对象的集合。它返回的是类似于数组的对象,包含与当前窗口相关联的所有框架窗口对象,其中第一个窗口对象的索引为0。

与 window.parent 不同,window.frames 返回了所有与当前窗口关联的框架窗口对象,而不仅仅是当前窗口的直接父级窗口对象。通过 window.frames 可以访问以 frame 或 iframe 元素创建的框架,其中每个框架都有一个唯一的名称或者数字索引。

需要注意的是,因为 window.frames 返回的是类似于数组的对象,所以可以像访问数组一样使用它,例如可以使用 window.frames[0] 来访问第一个框架窗口对象。

使用方法:

window.frames['getThis'].XXX(true, this)

在任意方法中使用以上代码.XXX为HTML文件中的方法名,后面是跟的参数,可以为多个参数。

HTML文件那边,只需要写上对应的function XXX 方法名,接收实参就可以了。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Top丶飞段

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值