Vue在新窗口打开页面并传参
    		       		warning:
    		            这篇文章距离上次修改已过447天,其中的内容可能已经有所变动。
    		        
        		                
                在Vue中,你可以通过编程方式打开一个新窗口,并且可以通过URL的查询参数传递数据。以下是一个简单的示例:
// 在Vue组件的方法中
methods: {
  openNewWindow(param) {
    // 创建一个新的URL,并附加查询参数
    const url = `${this.$router.resolve({
      name: 'TargetPage', // 目标页面的路由名称
      params: { data: param } // 需要传递的参数
    }).href}&newWindow=1`; // 添加一个标识,以便在新窗口中的页面知道它是被新窗口打开的
 
    // 打开新窗口
    window.open(url, '_blank');
  }
}在目标页面中,你可以通过this.$route.params获取传递的参数,并根据newWindow的值判断是否是新窗口打开的:
// 在目标页面的created钩子中
created() {
  const data = this.$route.params.data;
  const isNewWindow = this.$route.query.newWindow === '1';
  
  // 根据需要处理数据和新窗口的情况
  if (isNewWindow) {
    // 处理新窗口的逻辑
  }
}请确保TargetPage是你的路由配置中的一个有效路由名称。这样,你就可以在Vue应用中打开一个新窗口,并传递参数了。
评论已关闭