vue.js - 从数据库中获取渲染数据的前两个字符
问题描述
如何从数据库中获取渲染数据的前两个字符?
<div v-for="(schedule,index) in DailySchedule" v-bind:key="index">
<span class="days-div">
<span class="day" v-for="(days,index) in schedule" v-bind:key="index.id">
<span v-for="(day,index) in days" v-bind:key="index.id" >
{{day.day}}
</span>
</span>
</span>
<div>
数据声明:“data”:[{“id”:2,“days”:[{“id”:12,“day”:“monday”,“start_time”:“10:00:00”,},{ “id”:13,“天”:“星期二”,}]
输出数据为:
monday wednesday thursday
但我希望它呈现为M W Th
.
解决方案
花括号之间的内容是javascript。所以你应该可以使用这个:
{{day.day.substring(0, 2)}}
这将使字符串的字符 0(包含)到字符 2(排除)。更多关于子字符串函数here
更新: 您发布了以下数据:
"data":[
{
"id":2,
"days":[
{
"id":12,
"day":"monday",
"start_time":"10:00:00",
},
{
"id":13,
"day":"tuesday",
}
]
我想它是不完整的,因为后面有逗号。但据此推断,如果你想循环往复,你的<template>
部分应该是这样的:
<span v-for="(day,index) in days" v-bind:key="day.id" >
{{day.day}}
</span>
这是因为你的数据格式,你v-for
的模板中有三个,这意味着你的DailySchedule
对象应该存在并且至少有三个层次。注意v-bind:key
:你声明index.id
但index
不是一个对象,它是一个整数,你可以声明index
或者(因为你的对象中day.id
有一个id
字段)day
此外,如果这是 vue.js 中数据对象声明的复制粘贴,还有另一个问题:data
应该是function
这样的(我更新了小提琴给你一个例子):
data: function () {
return {
days: [
{
"id":12,
"day":"monday",
"start_time":"10:00:00",
},
{
"id":13,
"day":"tuesday",
}
]
//declare your other variables here
}
},
推荐阅读
- image - 为什么 pngs 的磁盘写入时间会随着使用 imagemagick 的持续负载而增加?
- excel - Excel VBA - 随机运行时错误
- python - 无法在我创建的 python 类上调用 _head 属性
- ios - 当目录和文件名正确时,Bundle.main.path(forResource:ofType:inDirectory:) 返回 nil
- javascript - 如何使输入字段只读
- class - best practice using method in a class
- java - 如何使用 Java 代码以编程方式从 websphere 门户 8.5 应用程序注销?
- c# - 当 Xamarin 应用以发布模式发布时,在 DI 引擎中找不到注册服务
- javascript - 恢复鼠标滚轮事件javascript库
- python - 具有总和和唯一值的熊猫 groupby