使用 vue.js 在 vis.js 时间轴中自定义语言环境
Custom locale in vis.js timeline using vue.js
我在 Vue.js 项目中使用 vis.js 时间轴。尽管使用 vanilla javascript(参见 codepen and documentation)自定义语言环境似乎很容易,但我无法使用 Vue 完成它。我已经将 moment.js 和 moment-with-locales-es6 添加到我的项目中。这是将区域设置应用于 moment.js 的正确方法吗,因此它也适用于 vis 时间轴?
这是我的 vue.js 组件:
<template>
<div className="wrapper">
<div id="visualization"></div>
</div>
</template>
<script>
import {Timeline} from 'vis-timeline/standalone';
import tr from 'moment/locale/tr'
import moment from "moment-with-locales-es6";
export default {
data() {
return {
items: [
{
id: 1,
content: "1",
start: new Date(2021, 2, 23),
group: 0
},
options: {
locale: "tr",
locales: {
tr: {
current: "geçerli",
time: "kere",
},
},
},
timeline: null
}
},
mounted() {
this.timeline = new Timeline(document.getElementById('visualization'));
this.timeline.setOptions(this.options);
this.timeline.setItems(this.items);
moment.locale('tr')
}
}
</script>
我通过将此添加到我的 index.html 文件来设法做到这一点:
<script src='https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js'></script>
<script src='https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/locale/tr.js'></script>
我很确定有更好的解决方案...
我在 Vue.js 项目中使用 vis.js 时间轴。尽管使用 vanilla javascript(参见 codepen and documentation)自定义语言环境似乎很容易,但我无法使用 Vue 完成它。我已经将 moment.js 和 moment-with-locales-es6 添加到我的项目中。这是将区域设置应用于 moment.js 的正确方法吗,因此它也适用于 vis 时间轴?
这是我的 vue.js 组件:
<template>
<div className="wrapper">
<div id="visualization"></div>
</div>
</template>
<script>
import {Timeline} from 'vis-timeline/standalone';
import tr from 'moment/locale/tr'
import moment from "moment-with-locales-es6";
export default {
data() {
return {
items: [
{
id: 1,
content: "1",
start: new Date(2021, 2, 23),
group: 0
},
options: {
locale: "tr",
locales: {
tr: {
current: "geçerli",
time: "kere",
},
},
},
timeline: null
}
},
mounted() {
this.timeline = new Timeline(document.getElementById('visualization'));
this.timeline.setOptions(this.options);
this.timeline.setItems(this.items);
moment.locale('tr')
}
}
</script>
我通过将此添加到我的 index.html 文件来设法做到这一点:
<script src='https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js'></script>
<script src='https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/locale/tr.js'></script>
我很确定有更好的解决方案...