TypeError: t is undefined
TypeError: t is undefined
我决定下载所有外部 CSS 和 JavaScript 文件,而不是依赖 CDN。然而,在我这样做之后,我遇到了 daterangepicker.js 插件的以下错误:
TypeError: t is undefined
我已经研究了这个错误,我 运行 发现的所有内容都表明 moment.js 要么根本没有被引用,要么在 daterangepicker.js 文件之后被引用。但是,我的脚本是这样定义的:
<script src="js/jquery.min.js"></script>
<script src="js/popper.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<script src="js/jquery.circliful.min.js"></script>
<script src="js/loader.js"></script>
<script src="js/moment.js"></script>
<script src="js/jquery.daterangepicker.min.js"></script>
我还确保没有拼写错误,如下面的屏幕截图所示:
我还直接从源网站而不是从某处托管的 CDN 下载 JavaScript 文件:
我不明白是什么导致了这个问题,我完全不知道如何解决这个问题。更令人沮丧的是,如果我尝试像以前一样尝试切换回使用 CDN,错误仍然存在。
更新
应Tyler Roper的要求,附上相关JS代码:
// Setup the Agency Report date-picker
$('#date_range').dateRangePicker({
autoClose: true,
format: 'MMMM Do YYYY',
showShortcuts: true,
customShortcuts: [
{
name: 'this week',
dates : function() {
var start = moment().day(0).toDate();
var end = moment().day(6).toDate();
return [start,end];
}
},
{
name: 'this month',
dates : function() {
var start = moment().startOf('month').toDate();
var end = moment().endOf('month').toDate();
return [start,end];
}
},
{
name: 'this year',
dates : function() {
var start = moment().startOf('year').toDate();
var end = moment().endOf('year').toDate();
return [start,end];
}
}]
}).data('dateRangePicker').setDateRange(moment().startOf('year').toDate(), moment().toDate());
尝试检查 link 加载您的 jQuery;在浏览器中打开项目并按 control + U
或按鼠标中的 right button
然后 select 选项 view page source
.
将打开一个新的浏览器-table 与 url 类似:view-source:yout-website-here
现在单击 link 加载您的 jquery
correction
如果您使用作曲家(经理),您可以在 require
中更改属性值,然后在终端中使用命令:composer update
通常,当您在控制台中收到 TypeError: t is undefined
错误时,这是因为脚本无法处理它尝试根据您指定的输入字段创建的一个或多个变量。
大多数情况下,这是由于定位了不正确的元素(即定位到父容器而不是实际输入)。正如 OP 在他们的评论中提到的,他们已经切换了元素 ID,但没有在代码中反映出来。
我个人遇到过不小心定位到输入字段的父 div 而不是直接输入字段的问题。
我决定下载所有外部 CSS 和 JavaScript 文件,而不是依赖 CDN。然而,在我这样做之后,我遇到了 daterangepicker.js 插件的以下错误:
TypeError: t is undefined
我已经研究了这个错误,我 运行 发现的所有内容都表明 moment.js 要么根本没有被引用,要么在 daterangepicker.js 文件之后被引用。但是,我的脚本是这样定义的:
<script src="js/jquery.min.js"></script>
<script src="js/popper.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<script src="js/jquery.circliful.min.js"></script>
<script src="js/loader.js"></script>
<script src="js/moment.js"></script>
<script src="js/jquery.daterangepicker.min.js"></script>
我还确保没有拼写错误,如下面的屏幕截图所示:
我还直接从源网站而不是从某处托管的 CDN 下载 JavaScript 文件:
我不明白是什么导致了这个问题,我完全不知道如何解决这个问题。更令人沮丧的是,如果我尝试像以前一样尝试切换回使用 CDN,错误仍然存在。
更新
应Tyler Roper的要求,附上相关JS代码:
// Setup the Agency Report date-picker
$('#date_range').dateRangePicker({
autoClose: true,
format: 'MMMM Do YYYY',
showShortcuts: true,
customShortcuts: [
{
name: 'this week',
dates : function() {
var start = moment().day(0).toDate();
var end = moment().day(6).toDate();
return [start,end];
}
},
{
name: 'this month',
dates : function() {
var start = moment().startOf('month').toDate();
var end = moment().endOf('month').toDate();
return [start,end];
}
},
{
name: 'this year',
dates : function() {
var start = moment().startOf('year').toDate();
var end = moment().endOf('year').toDate();
return [start,end];
}
}]
}).data('dateRangePicker').setDateRange(moment().startOf('year').toDate(), moment().toDate());
尝试检查 link 加载您的 jQuery;在浏览器中打开项目并按 control + U
或按鼠标中的 right button
然后 select 选项 view page source
.
将打开一个新的浏览器-table 与 url 类似:view-source:yout-website-here
现在单击 link 加载您的 jquery
correction
如果您使用作曲家(经理),您可以在 require
中更改属性值,然后在终端中使用命令:composer update
通常,当您在控制台中收到 TypeError: t is undefined
错误时,这是因为脚本无法处理它尝试根据您指定的输入字段创建的一个或多个变量。
大多数情况下,这是由于定位了不正确的元素(即定位到父容器而不是实际输入)。正如 OP 在他们的评论中提到的,他们已经切换了元素 ID,但没有在代码中反映出来。
我个人遇到过不小心定位到输入字段的父 div 而不是直接输入字段的问题。