Bootstrap 范围设置的 DateRangePicker 语言

Bootstrap DateRangePicker language on Range setting

我知道我可以使用 locale 设置来定义 Bootstrap DateRangePicker 插件语言,尽管我不知道如何为 range 设置定义语言。

$('#my-calendar').daterangepicker(
{
  ranges: 
  {
     'Today': [moment(), moment()],
     'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
     'Last 7 days': [moment().subtract(6, 'days'), moment()],
     'Last 30 days': [moment().subtract(29, 'days'), moment()],
     'This month': [moment().startOf('month'), moment().endOf('month')]
  }
}

我想将 todayyesterday 等更改为定义的语言。所以我尝试没有成功:

var lang = JSON.parse($('#lang').val());
/*
 * lang[0] = 'Today'
 * lang[1] = 'Yesterday'
 * lang[2] = 'Last 7 days'
 * lang[3] = 'Last 30 days'
 * lang[4] = 'This month'
 */
$('#my-calendar').daterangepicker(
{
  ranges: 
  {
     lang[0]: [moment(), moment()],
     lang[1]: [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
     lang[2]: [moment().subtract(6, 'days'), moment()],
     lang[3]: [moment().subtract(29, 'days'), moment()],
     lang[4]: [moment().startOf('month'), moment().endOf('month')]
  }
}

但是这会在每个 lang[number] 行中检索错误 Uncaught SyntaxError: Unexpected token [

如何在范围设置中设置正确的标签语言?

以非时尚的方式解决

基本上,DateRangePicker 插件会创建一个 div,其中包含一个包含 TodayYesterday 等的列表。

<div class="ranges">
    <ul>
        <li>Today</li>
        <li>Yesterday</li>
    </ul>
</div>

所以在插件完成初始化后,我手动更改 litext

$('.ranges ul li').eq(0).text(lang[0]);
$('.ranges ul li').eq(1).text(lang[1]);