VUE表达式{{}}中如何拼接字符

 更新时间:2023年07月05日 14:50:57   作者:赵四_  
这篇文章主要介绍了VUE表达式{{}}中如何拼接字符问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

VUE表达式{{}}中拼接字符

在表达式中我们一直都只绑定简单的键值。

但实际上,对于所有的数据绑定,Vue.js 都提供了完全的 JavaScript 表达式支持。

例如:

{{ number + 1 }}    
{{ ok ? 'YES' : 'NO' }}
{{ message.split('').reverse().join('') }}

但是最近我有一个需求,就是在表达式中进行一个拼接。

        <div class="appdouble_data">
          <div class="BonusPoolDetails_data"
          v-for = 'item,index in list'
          >
            <div class="BonusPoolDetails_data_tit">
              {{item.start_at}}至{{item.end_at}}
            </div>
            <div class="data_flex">
              <div class="data_flex_tit flex align-cen">
                <div>推荐人数</div>
                <div>奖金池</div>
                <div>累计奖金</div>
                <div>获得分红</div>
              </div>
              <div class="data_flex_list flex align-cen"
              v-for = 'props,key in item.has_details'
              >
                <div>{{props.invite_number}}</div>
                <div>{{props.pool_index}}</div>
                <div>{{item[String(props.pool_index) + '_pool']}}</div>
                <div>{{props.money}}</div>
              </div>
            </div>
          </div>
        </div>

大家着重看这段代码

{{item[String(props.pool_index) + '_pool']}}

这个是利用第二个循环里的一个数据props.pool_index来拼接成第一个循环里的相对应一个数据(item.4_pool)

VUE字符串拼接路由path路径

功能:产品列表页面进入产品详情页面,产品详情中四个模块之间切换

products.vue进入detail.vue页面,

detail.vue中配置子路由

第一步

products.vue

<ul class="pro">
        <router-link to="/detail/pro1" tag="li">产品1</router-link>
        <router-link to="/detail/pro2" tag="li">产品2</router-link>
        <router-link to="/detail/pro3" tag="li">产品3</router-link>
        <router-link to="/detail/pro4" tag="li">产品4</router-link>
</ul>

第二步

router/index.js 路由配置

     {
      path: '/detail/:id',
      component: Detail,
            children:[
                   { path: 'c1', component: C1},
                   { path: 'c2', component: C2},
                   { path: 'c3', component: C3},
                   { path: 'c4', component: C4}
            ]
    }

第三步

detail.vue中接收产品列表中传递过来的参数,并实现子路由的切换

<ul class="detail-left">
<li><h3>产品{{this.$route.params.id}}</h3></li>
    <router-link tag="li" :to='{path:"/detail/"+this.$route.params.id+"/c1"}'>数据统计</router-link>
    <router-link tag="li" :to='{path:"/detail/"+this.$route.params.id+"/c2"}'>数据预测</router-link>
    <router-link tag="li" :to='{path:"/detail/"+this.$route.params.id+"/c3"}'>数据分析</router-link>
    <router-link tag="li" :to='{path:"/detail/"+this.$route.params.id+"/c4"}'>广告发布</router-link>
</ul>

注意:

1.接参数的方式是this.$route.params.id中的id和路由中配置的 path: '/detail/:id’的id对应,这个id相当于一个变量

2.路由路径中字符串拼接放方式可以这样写

:to='{path:"/detail/"+this.$route.params.id+"/c1"}'

完整index.js配置如下

import Vue from 'vue'
import Router from 'vue-router'
import Detail from "../detail/detail"
import Home from "../home/home"
import C1 from "../detail/child1"
import C2 from "../detail/child2"
import C3 from "../detail/child3"
import C4 from "../detail/child4"
import HotDetail from "../home/hot-detail"
Vue.use(Router)
export default new Router({
  routes: [
		{
		  path: '/',
		  component: Home
		},
		{
			path:"/hotdetail",
			component:HotDetail
		},
    {
      path: '/detail/:id',
      component: Detail,
			children:[
					{
				  path: 'c1',
				  component: C1
				},
					{
				  path: 'c2',
				  component: C2
				},
				{
				  path: 'c3',
				  component: C3
				},
				{
				  path: 'c4',
				  component: C4
				},
			]
    }
  ]
})

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Vue引入路径正确但一直报错问题:Already included file name ‘××ב differs from file name ‘××ב only in casing.

    Vue引入路径正确但一直报错问题:Already included file name&n

    这篇文章主要介绍了Vue引入路径正确但一直报错:Already included file name ‘××ב differs from file name ‘××ב only in casing.具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • vue3+Element Plus实现自定义穿梭框的详细代码

    vue3+Element Plus实现自定义穿梭框的详细代码

    找到一个好用的vue树形穿梭框组件都很难,又不想仅仅因为一个穿梭框在element-ui之外其他重量级插件,本文给大家分享vue3+Element Plus实现自定义穿梭框的示例代码,感兴趣的朋友一起看看吧
    2024-01-01
  • Vue-cli Eslint在vscode里代码自动格式化的方法

    Vue-cli Eslint在vscode里代码自动格式化的方法

    本篇文章主要介绍了Vue-cli Eslint在vscode里代码自动格式化的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • vue中对象数组去重的实现

    vue中对象数组去重的实现

    这篇文章主要介绍了vue中对象数组去重的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • npm run serve运行vue项目时报错:Error: error:0308010C:digital envelope routines::unsupported的解决方法

    npm run serve运行vue项目时报错:Error: error:0308010C

    这篇文章主要介绍了npm run serve运行vue项目时,出现报错:Error: error:0308010C:digital envelope routines::unsupported的解决方法,文中有详细的解决方法,需要的朋友可以参考下
    2024-04-04
  • vue3-ace-editor如何配置语法

    vue3-ace-editor如何配置语法

    这篇文章主要介绍了vue3-ace-editor如何配置语法问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • element-ui重置resetFields()不生效的解决

    element-ui重置resetFields()不生效的解决

    本文主要介绍了element-ui重置resetFields()不生效的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-12-12
  • Vue实现表格批量审核功能实例代码

    Vue实现表格批量审核功能实例代码

    这篇文章主要为大家详细介绍了Vue实现表格批量审核功能实例代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-05-05
  • vue项目实现m3u8流媒体播放详细图文教程

    vue项目实现m3u8流媒体播放详细图文教程

    m3u8是一种常用的视频流媒体格式,通常用于在Web上播放视频,这篇文章主要给大家介绍了关于vue项目实现m3u8流媒体播放的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-09-09
  • vue页面使用阿里oss上传功能的实例(二)

    vue页面使用阿里oss上传功能的实例(二)

    本篇文章主要介绍了vue页面使用阿里oss上传功能的实例(二),主要介绍OSS管理控制台设置访问权限、角色等,有兴趣的可以了解一下
    2017-08-08

最新评论