文本,展现到文章的面前,Vue结合v-for实现传参的方法,好的资料,Vue实现动态绑定,数据放到前端页面上

简介: 文本,展现到文章的面前,Vue结合v-for实现传参的方法,好的资料,Vue实现动态绑定,数据放到前端页面上

原文链接:

vue中的三种传递参数方法_vue button 传参-CSDN博客

<div class="shopLine" @click="goDetails(item.id)" v-for="item,index in cart">
<button @click="goThird">点击跳转第二种方式传参</button>
<button @click="goSi">点击跳转第三种方式传参</button>

在methods方法下

methods:{
    //也是path的方式来去传递动态路由参数
    //#/second/00001
    goDetails(isd){
      this.$router.push({
        path:'/second/'+isd
      })
    },
    goThird(){
      //第二种方式传参  不需要匹配路由中做配合
      //是用  路由的别名  name 来去做跳转
      //并且是用 params  来去传递参数
      //#/thrith
//    this.$router.push({
//      name:'Thrith',
//      params:{
//        pid:'123456'
//      }
//    })
      this.$router.push({
        path:'/thrith'
      })
    },
    //第三种方式 也是用  path 来去匹配相应的路由
    //传递参数 是用 query来去传递参数  
    //#/si?pid=1234567  和get请求传递参数 是一致
    goSi(){
      this.$router.push({
        path:'/si',
        query:{
          pid:'1234567'
        }
      })
    }
  }

在second , thrith , si ,页面取参数

second 页面

 //mounted 已经挂载/渲染完成后会自动调用这个函数  
  mounted(){
    //console.log('111')
    //在vue  提供了 this.$route.params.id  来去获取 动态路由传过来的参数
    //获取参数 id  意思  是路由配置中所写的参数 跟router index.js 中设置的名字是一样
    var id = this.$route.params.id;
    console.log(id);
    //http 请求 把 这个id  当做参数 向后台服务器 请求数据
    //拿到result
    //this.cart = result
     
  }

si 页面

//mounted 已经挂载/渲染完成后会自动调用这个函数  
  mounted(){
      var id = this.$route.query.pid;
      console.log(id);
     
  }

thrith 页面

//mounted 已经挂载/渲染完成后会自动调用这个函数  
  mounted(){
    //第二种方式传递的参数 和第一种方传递的参数  获取的时候  都是一致
    //第二种方式传递的参数 在刷新过后就不会存在了
    //这个方式的传递的参数 安全系数 就比较高
    //一般是用在  参数只能够使用一次的  接口  比如  支付
//    var id = this.$route.params.pid;
//  console.log(id);
     
  }

动态路由跳转到一个新的页面,第一步,建一个新的页面:

Vue-router,使用英文,来定义路由的参数项

第一步准备一个接收参数的页面

第二步 在vue-router中使用英文冒号:定义路由参数项

使用this.route.params.id获取动态路由传递过来的参数

前端点击跳转到的id页面,完整代码:

 
 
<template>
    <div v-html="code.code"></div>
  </template>
  
  <script>
  import axios from 'axios';
  import '@/css/common/normalize.min.css';
  import '@/css/common/style.css';
//   import '@/css/'
 
  import '@wangeditor/editor/dist/css/style.css' // 引入 css
  export default {
      data(){
          return {
              code: [],
              id: 2
          }
      },
      mounted(){
          var id = this.$route.params.id;
          axios.get('/code/selectById/' + id).then(res => {
          this.code = res.data.data
        })
        console.log(this.article)
      }
  }
  </script>
<style>
  
div {
  word-wrap: normal;
  font-family: Consolas, Monaco, Andale Mono, Ubuntu Mono, monospace;
  -webkit-hyphens: none;
  hyphens: none;
  line-height: 1.5;
  margin: .5em 0;
  overflow: auto;
  padding: 1em;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
  text-align: left;
  text-shadow: 0 1px #fff;
  white-space: pre;
  word-break: normal;
  word-spacing: normal;
}
 
div {
  background-color: var(--w-e-textarea-slight-bg-color);
  border: 1px solid var(--w-e-textarea-slight-border-color);
  border-radius: 4px 4px;
  display: block;
  font-size: 14px;
  padding: 10px;
  text-indent: 0;
}
div {
  background-color: var(--w-e-textarea-slight-bg-color);
  border-radius: 3px;
  font-family: monospace;
  padding: 3px;
}
</style>

路由写法:

  {
    path: '/code/:id',
    component: () => import('@/views/until/code/codeContainer')
  },

点击想要跳转的代码:

 <div class="container">
      <div class="scroll-container clearfix" @click="goDetails(item.id)" style="height: 135px;margin: 0 700px 0 325px;" v-for="item in code" :key="item.id">
        <div class="left_Container">
          <div style="font-size: 18px;padding: 0 0 90px 0;text-align: left;" >{{ item.title}}</div>
          <div style="padding: 0 0 0 0;text-align: left;font-size: 14px;">
            {{ item.category}}<span style="font-size: 12px;margin-left: 10px;">{{ item.introduce }}</span>
          </div>
        </div>
        <div class="right_Container" style="padding: 10px 0 0 0;">
          <img src="@/assets/login.png" alt="" style="width: 158px;height: 112px;">
        </div>
      </div>
    </div>
  </div>
</template>
<!-- 
<script setup>
 
import editor from 'monaco-editor'
const dom = ref("")
const initEditor = () => {
        // 初始化编辑器,确保dom已经渲染
        editor.value = monaco.editor.create(dom.value, {
            theme: 'vs-dark', //官方自带三种主题vs, hc-black, or vs-dark
            value: dataList.contentValue, //编辑器初始显示文字
            readOnly: false,
            automaticLayout: true,
            language: "javascript",
            folding: true,  //代码折叠
            roundedSelection: false, // 右侧不显示编辑器预览框
            autoIndent: true // 自动缩进
        });
    }
</script> -->
<script>
import axios from 'axios';
export default {
      data(){
          return {
              code: [],
              id: 2,
              url: "http://localhost:9090/code",
          }
      },
      methods:{
        goDetails(id){
          this.$router.push({
            path: '/code/' + id
          })
        }
      },
      mounted(){
          axios.post(this.url + "/list").then(res => {
          this.code = res.data.data
        })
      }
  }
 
</script>
 
<style>
.right_Container {
  background-size: 12px !important; 
}
  * {
  margin: 0;
  padding: 0;
}
 
ul li {
  font-family: 黑体;
  list-style: none;
  font-weight: 600;
}
 
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}
 
.header {
  width: 100%;
  height: 100%;
}
 
 
.logo {
  height: 60px;
  background-color: #fff;
  padding: 12px 0 0 38px;
 
}
 
.logo a {
  display: block;
  width: 320px;
  height: 60px;
  background: url('@/assets/tuku/logo.png') no-repeat;
  text-decoration: none;
}
 
.logo h1 a div {
  font-family: "黑体";
  font-size: 20px;
  padding-top: 7px;
  margin-right: 60px;
  font-style: italic;
}
 
.blueStyle {
  background: linear-gradient(135deg, #2564b8 56%, #ffffff 84%);
  /*设置渐变的方向从左到右 颜色从ff0000到ffff00*/
  /*设置渐变的方向从左到右 颜色从ff0000到ffff00*/
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
 
.search {
  float: right;
  margin-right: 430px;
  margin-top: 10px;
  border-radius: 50px;
}
 
input:focus {
  outline: none;
}
 
.logo {
  float: left;
}
.search-style {
  display: inline-block;
  padding: 0px 0 1px 10px;
  border-radius: 18px 0 0 18px;
  width: 484px;
  height: 40px;
  box-sizing: border-box;
  line-height: inherit;
  border: 2px solid #418df5;
  border-right: none;
  font-size: 14px;
}
.btn {
  display: inline-block;
  color: #fff;
  font-style: italic;
  width: 105px;
  border: 2px solid #418DF5;
  line-height: 37px;
  font-weight: 300;
  background-color: #418DF5;
  border-radius: 0 16px 16px 0;
}
.classify {
  padding-left: 40px;
}
 
.classify ul li {
  float: left;
  font-size: 17px;
  font-style: italic;
  padding-right: 28px;
}
 
.userlabel {
  margin-bottom: 22px;
  padding: 25px 0 0 38px;
}
 
.userlabel ul li {
  float: left;
  font-size: 16px;
  padding: 0 40px 25px 0;
  font-style: italic;
}
 
.left_Container{
  float: left;
}
.right_Container {
  float: right;
}
.clearfix:after {content: "";display: block;clear: both;}
</style>

效果:点击之后

到了显示页面

相关文章
|
6月前
|
前端开发 算法 Java
【CSS】前端三大件之一,如何学好?从基本用法开始吧!(二):CSS伪类:UI伪类、结构化伪类;通过伪类获得子元素的第n个元素;创建一个伪元素展示在页面中;获得最后一个元素;处理聚焦元素的样式
伪类:伪类这个叫法源自于它们跟类相似,但实际上并没有类会附加到标记中的标签上。 伪类分为两种(以及新增的伪类选择器): UI伪类:会在HTML元素处于某种状态时(例如:鼠标指针位于连接上),为该元素应用CSS样式。 :hover 结构化伪类:会在标记中存在某种结构上的关系时 例如: 某元素是一组元素中的第一个或最后一个,为该元素应用CSS样式。 :not和:target(CSS3新增的两个特殊的伪类选择器)
698 2
|
存储 前端开发 安全
前端如何存储数据:Cookie、LocalStorage 与 SessionStorage 全面解析
本文全面解析前端三种数据存储方式:Cookie、LocalStorage与SessionStorage。涵盖其定义、使用方法、生命周期、优缺点及典型应用场景,帮助开发者根据登录状态、用户偏好、会话控制等需求,选择合适的存储方案,提升Web应用的性能与安全性。(238字)
1016 0
|
11月前
|
JavaScript 前端开发 Java
制造业ERP源码,工厂ERP管理系统,前端框架:Vue,后端框架:SpringBoot
这是一套基于SpringBoot+Vue技术栈开发的ERP企业管理系统,采用Java语言与vscode工具。系统涵盖采购/销售、出入库、生产、品质管理等功能,整合客户与供应商数据,支持在线协同和业务全流程管控。同时提供主数据管理、权限控制、工作流审批、报表自定义及打印、在线报表开发和自定义表单功能,助力企业实现高效自动化管理,并通过UniAPP实现移动端支持,满足多场景应用需求。
1050 1
|
6月前
|
前端开发 算法 Java
【CSS】前端三大件之一,如何学好?从基本用法开始吧!(三):元素继承关系、层叠样式规则、字体属性、文本属性;针对字体和文本作样式修改
继承 我们的CSS中很多的属性也是可以继承的,其中相当一部分是跟文字的相关的,比如说颜色、字体、字号。 当然还有一部分是不能继承的。 例如边框、内外边距。 层叠 层叠是CSS的核心机制。 层叠的工作机制: 当元素的同一个样式属性有多种样式值的时候,CSS就是靠层叠机制来决定最终应用哪种样式。 层叠规则: 层叠规则一:找到应用给每个元素和属性的声明。 说明:浏览器在加载每个页面时,都会据此查找到每条CSS规则, 并标识出所有受到影响的HTML元素。
226 0
|
移动开发 前端开发 JavaScript
Vue与React两大前端框架的主要差异点
以上就是Vue和React的主要差异点,希望对你有所帮助。在选择使用哪一个框架时,需要根据项目的具体需求和团队的技术栈来决定。
647 83
|
前端开发 安全 开发工具
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
935 90
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
|
11月前
|
JavaScript 前端开发 编译器
Vue与TypeScript:如何实现更强大的前端开发
Vue.js 以其简洁的语法和灵活的架构在前端开发中广受欢迎,而 TypeScript 作为一种静态类型语言,为 JavaScript 提供了强大的类型系统和编译时检查。将 Vue.js 与 TypeScript 结合使用,不仅可以提升代码的可维护性和可扩展性,还能减少运行时错误,提高开发效率。本文将介绍如何在 Vue.js 项目中使用 TypeScript,并通过一些代码示例展示其强大功能。
459 22
|
11月前
|
JSON 前端开发 JavaScript
前端工具方法整理
前端工具方法整理
236 8
|
10月前
|
IDE 前端开发 开发工具
用通义灵码IDE做产品高保真原型和前端页面
通义灵码IDE助力高效开发,告别传统Axure原型图的繁琐沟通。通过该工具可直接生成高保真产品原型与前端页面,大幅提升客户确认效率及满意度。现已将相关演示发布至B站(https://www.bilibili.com/video/BV18qT7ziEb7/?vd_source=dc6a6864c895818db6ce4170d50b3557),欢迎体验!用直观操作代替反复说明,让交付更流畅。
|
前端开发 Cloud Native Java
Java||Springboot读取本地目录的文件和文件结构,读取服务器文档目录数据供前端渲染的API实现
博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
Java||Springboot读取本地目录的文件和文件结构,读取服务器文档目录数据供前端渲染的API实现

热门文章

最新文章

  • 1
    前端如何存储数据:Cookie、LocalStorage 与 SessionStorage 全面解析
    1016
  • 2
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(九):强势分析Animation动画各类参数;从播放时间、播放方式、播放次数、播放方向、播放状态等多个方面,完全了解CSS3 Animation
    428
  • 3
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(八):学习transition过渡属性;本文学习property模拟、duration过渡时间指定、delay时间延迟 等多个参数
    340
  • 4
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(七):学习ransform属性;本文学习 rotate旋转、scale缩放、skew扭曲、tanslate移动、matrix矩阵 多个参数
    323
  • 5
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(六):全方面分析css的Flex布局,从纵、横两个坐标开始进行居中、两端等元素分布模式;刨析元素间隔、排序模式等
    437
  • 6
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(五):背景属性;float浮动和position定位;详细分析相对、绝对、固定三种定位方式;使用浮动并清除浮动副作用
    617
  • 7
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(四):元素盒子模型;详细分析边框属性、盒子外边距
    856
  • 8
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(三):元素继承关系、层叠样式规则、字体属性、文本属性;针对字体和文本作样式修改
    226
  • 9
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(二):CSS伪类:UI伪类、结构化伪类;通过伪类获得子元素的第n个元素;创建一个伪元素展示在页面中;获得最后一个元素;处理聚焦元素的样式
    698
  • 10
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(一):CSS发展史;CSS样式表的引入;CSS选择器使用,附带案例介绍
    397
  • 下一篇
    开通oss服务