如何在Laravel项目中使用`bootstrap-datetimepicker`?

时间:2018-09-01 17:41:39

标签: laravel laravel-5 bootstrap-datetimepicker laravel-mix eonasdan-datetimepicker

我有一个Laravel 5.6 base项目。我正在尝试使用Laravel Mix来编译我所有的js/css资源。

我想使用JavaScript datetime-picker,使我可以在页面上创建datetime-pike和范围选择器。由于我使用css-bootstrap框架进行样式设置,因此我想使用bootstrap-datetimepicker。我很难用我的混音器安装程序安装此项目。

这是我的webpack.mix.js文件中的代码,

const { mix } = require('laravel-mix');

mix.js('resources/assets/js/app.js', 'public/js')
    .scripts([
            'bower_components/eonasdan-bootstrap-datetimepicker/build/js/tempusdominus-core.min.js'
        ], 'public/js/app_addons.js')
   .sass('resources/assets/sass/app.scss', 'public/css');

resources/assets/js/app.js文件中,添加了以下代码

window.datetimepicker = require('../../../bower_components/eonasdan-bootstrap-datetimepicker/build/js/tempusdominus-core.min.js');

但是在浏览器的控制台中,出现以下错误

  

TypeError:$(...)。datetimepicker不是函数

如何在Laravel-mix中正确包含bootstrap-datetimepicker

1 个答案:

答案 0 :(得分:0)

我认为这应该可行:

  1. 删除datetime-picker中有关webpack.mix.js的参考:

    const { mix } = require('laravel-mix');
    
    mix.js('resources/assets/js/app.js', 'public/js')
    .sass('resources/assets/sass/app.scss', 'public/css');
    
  2. 将文件bower_components/eonasdan-bootstrap-datetimepicker/build/js/tempusdominus-core.min.js复制到resources/assets/js/tempusdominus-core.js

  3. 将此添加到app.js

    window.jQuery = window.$ = $ = require('jquery');
    window.datetimepicker= require('./tempusdominus-core')($);
    //or require('./tempusdominus-core');
    

,希望能工作