tempus-dominus 未检测到力矩导入
tempus-dominus doesn't detect moment import
我知道有很多关于 moment
和 tempudominus-bootstrap-4
的问题,但大多数时候它与用户错误有关,我没有找到我的参考...
所以我正在使用 symfony
框架和 webpack-encore
包。我想将 tempusdominus 添加到我的文件 event.js
以使用 dateTimePicker
//../assets/js/app.js
import $ from 'jquery';
import 'bootstrap';
import moment from 'moment';
import 'tempusdominus-bootstrap-4';
$(function () {
//some datepicker
});
当我刷新页面时出现以下错误
Error: Tempus Dominus Bootstrap4's requires moment.js. Moment.js must be included before Tempus Dominus Bootstrap4's JavaScript.
从这里开始
// ../tempusdominus-bootstrap-4.js
if (typeof moment === 'undefined') {
throw new Error('Tempus Dominus Bootstrap4\'s requires moment.js. Moment.js must be included before Tempus Dominus Bootstrap4\'s JavaScript.');
}
显然我的时刻变量是未定义的。我将我的 app.js 文件更改为在控制台中渲染时刻
//../assets/js/app.js
import $ from 'jquery';
import 'bootstrap';
import moment from 'moment';
//import 'tempusdominus-bootstrap-4';
$(function () {
console.log("type of moment = "+ typeof(moment));
});
得到以下答案:
type of moment = function
moment
已定义,为什么 tempusDominus 没有检测到它?
答案来自 github 回购 here
我在这里复制消息:
你在 webpack 打包的 JS 文件中导入 moment
模块。
您导入的 moment
实例在运行时可用(这就是为什么您可以 console.log
它),但对于依赖全局对象使用的非模块库(例如 tempusdominus
)不是全局可用的它。
使用@symfony/webpack-encore
,您可以使用Encore的.autoProvideVariables()
方法轻松提供一个全局变量:
Encore
.autoProvideVariables({
// Update those to your needs
$: 'jquery',
moment: 'moment'
})
;
我知道有很多关于 moment
和 tempudominus-bootstrap-4
的问题,但大多数时候它与用户错误有关,我没有找到我的参考...
所以我正在使用 symfony
框架和 webpack-encore
包。我想将 tempusdominus 添加到我的文件 event.js
以使用 dateTimePicker
//../assets/js/app.js
import $ from 'jquery';
import 'bootstrap';
import moment from 'moment';
import 'tempusdominus-bootstrap-4';
$(function () {
//some datepicker
});
当我刷新页面时出现以下错误
Error: Tempus Dominus Bootstrap4's requires moment.js. Moment.js must be included before Tempus Dominus Bootstrap4's JavaScript.
从这里开始
// ../tempusdominus-bootstrap-4.js
if (typeof moment === 'undefined') {
throw new Error('Tempus Dominus Bootstrap4\'s requires moment.js. Moment.js must be included before Tempus Dominus Bootstrap4\'s JavaScript.');
}
显然我的时刻变量是未定义的。我将我的 app.js 文件更改为在控制台中渲染时刻
//../assets/js/app.js
import $ from 'jquery';
import 'bootstrap';
import moment from 'moment';
//import 'tempusdominus-bootstrap-4';
$(function () {
console.log("type of moment = "+ typeof(moment));
});
得到以下答案:
type of moment = function
moment
已定义,为什么 tempusDominus 没有检测到它?
答案来自 github 回购 here
我在这里复制消息:
你在 webpack 打包的 JS 文件中导入 moment
模块。
您导入的 moment
实例在运行时可用(这就是为什么您可以 console.log
它),但对于依赖全局对象使用的非模块库(例如 tempusdominus
)不是全局可用的它。
使用@symfony/webpack-encore
,您可以使用Encore的.autoProvideVariables()
方法轻松提供一个全局变量:
Encore
.autoProvideVariables({
// Update those to your needs
$: 'jquery',
moment: 'moment'
})
;