Tempus Domus Bootstrap4需要minom.js。(日期时间选取器)

本教程将介绍Tempus Domus Bootstrap4需要minom.js。(日期时间选取器)的处理方法,这篇教程是从别的地方看到的,然后加了一些国外程序员的疑问与解答,希望能对你有所帮助,好了,下面开始学习吧。

Tempus Domus Bootstrap4需要minom.js。(日期时间选取器) 教程 第1张

问题描述

我正在尝试使用Tempus Dominus Bootstrap4添加DateTimePicker。但我收到以下错误。

我使用Laravel作为前端。所以我用混合乳酪。

我的刀片文件在下面

@extends('layouts.app')


@section('content')
@if((Auth::user()->hasRole('teacher')) || (Auth::user()->hasRole('admin')) || (Auth::user()->hasRole('superadmin')) )
<div class="container">
 <div class="row justify-content-center">
  <div class="col-md-8">
<div class="card">
 <div class="card-header">{{__("Dashboard")}}</div>

 <div class="card-body">
  <p>{{ Auth::user()->name }}</p>
  <p>{{ $errors->first('JSONerror') }}</p>
 </div>
</div>
  </div>
 </div>
</div>
<div class="container">
  <div class="row">
<div class="col-sm-6">
 <div class="form-group">
  <div class="input-group date" id="datetimepicker1" data-target-input="nearest">
<input type="text" class="form-control datetimepicker-input" data-target="#datetimepicker1"/>
<div class="input-group-append" data-target="#datetimepicker1" data-toggle="datetimepicker">
 <div class="input-group-text"><i class="fa fa-calendar"></i></div>
</div>
  </div>
 </div>
</div>
<script type="text/javascript">
 $(function () {
  $('#datetimepicker1').datetimepicker();
 });
</script>
  </div>
 </div>
@else
<div class="container">
  <div class="row justify-content-center">
<div class="col-md-8">
 <div class="card">
  <div class="card-header">Authority Problem</div>
  <div class="card-body">
{{__("You do not have the authority to reach this page")}}
  </div>
 </div>
</div>
  </div>
 </div>
@endif
@endsection

我的layouts.app刀片文件是:

 <!DOCTYPE html>
<html lang="{{ app()->getLocale() }}">
<head>
 <meta charset="utf-8">
 <meta http-equiv="X-UA-Compatible" content="IE=edge">
 <meta name="viewport" content="width=device-width, initial-scale=1">

 <!-- CSRF Token -->
 <meta name="csrf-token" content="{{ csrf_token() }}">

 <title>{{ config('app.name', 'Laravel') }}</title>

 <!-- Scripts -->
 <script src="{{ asset('js/app.js') }}" defer></script>
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
 <!-- Fonts -->
 <link rel="dns-prefetch" href="https://www.qumuban.com/redirect/aHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbQ==" target="_blank">
 <link href="https://www.qumuban.com/redirect/aHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJhbGV3YXk6MzAwLDQwMCw2MDA=" target="_blank" rel="stylesheet" type="text/css">
 <link rel="stylesheet" href="https://www.qumuban.com/redirect/aHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvZm9udC1hd2Vzb21lLzQuNy4wL2Nzcy9mb250LWF3ZXNvbWUubWluLmNzcw==" target="_blank">

 <!-- Styles -->
 <link href="{{ asset('css/app.css') }}" rel="stylesheet">
 <link rel="stylesheet" href="{{ asset('css/fullcalendar.css') }}">
</head>
<body>
 <div id="app">
  <nav class="navbar navbar-expand-md navbar-light navbar-laravel">
<div class="container">
 <a class="navbar-brand" href="{{ url('/') }}">
  {{ config('app.name', 'Laravel') }}
 </a>
 <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
  <span class="navbar-toggler-icon"></span>
 </button>

 <div class="collapse navbar-collapse" id="navbarSupportedContent">
  <!-- Left Side Of Navbar -->
  <ul class="navbar-nav mr-auto">

  </ul>

  <!-- Right Side Of Navbar -->
  <ul class="navbar-nav ml-auto">
<!-- Authentication Links -->
@guest
 <li><a class="nav-link" href="{{ route('login') }}">{{ __('Login') }}</a></li>
 <li><a class="nav-link" href="{{ route('register') }}">{{ __('Register') }}</a></li>
@else
 <li class="nav-item dropdown">
  <a id="navbarDropdown" class="nav-link dropdown-toggle" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" v-pre>
{{ Auth::user()->name }} <span class="caret"></span>
  </a>

  <div class="dropdown-menu" aria-labelledby="navbarDropdown">
<a class="dropdown-item" href="{{ route('logout') }}"
onclick="event.preventDefault();
  document.getElementById('logout-form').submit();">
 {{ __('Logout') }}
</a>

<form id="logout-form" action="{{ route('logout') }}" method="POST" style="display: none;">
 @csrf
</form>
  </div>
 </li>
@endguest
  </ul>
 </div>
</div>
  </nav>

  <main class="py-4">
@yield('content')
  </main>
 </div>
 </body>
</html>

我的app.js文件:

 /**
 * First we will load all of this project's JavaScript dependencies which
 * includes Vue and other libraries. It is a great starting point when
 * building robust, powerful web applications using Vue and Laravel.
 */

require('./bootstrap');

window.Vue = require('vue');

/**
 * Next, we will create a fresh Vue application instance and attach it to
 * the page. Then, you may begin adding components to this application
 * or customize the JavaScript scaffolding to fit your unique needs.
 */

Vue.component('example-component', require('./components/ExampleComponent.vue'));

const app = new Vue({
 el: '#app'
});
Vue.config.devtools = true;

$.ajaxSetup({
 headers: {
  'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
 }
});

我的bootstrap.js文件:

window._ = require('lodash');
window.Popper = require('popper.js').default;

/**
 * We'll load jQuery and the Bootstrap jQuery plugin which provides support
 * for JavaScript based Bootstrap features such as modals and tabs. This
 * code may be modified to fit the specific needs of your application.
 */

try {
 window.$ = window.jQuery = require('jquery');

 require('bootstrap');
} catch (e) {
 alert("JQ is not loaded");
}

/**
 * We'll load the axios HTTP library which allows us to easily issue requests
 * to our Laravel back-end. This library automatically handles sending the
 * CSRF token as a header based on the value of the "XSRF" token cookie.
 */

window.axios = require('axios');

window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';

/**
 * Next we will register the CSRF Token as a common header with Axios so that
 * all outgoing HTTP requests automatically have it attached. This is just
 * a simple convenience so we don't have to attach every token manually.
 */

let token = document.head.querySelector('meta[name="csrf-token"]');

if (token) {
 window.axios.defaults.headers.common['X-CSRF-TOKEN'] = token.content;
} else {
 console.error('CSRF token not found: https://laravel.com/docs/csrf#csrf-x-csrf-token');
}

/**
 * Echo exposes an expressive API for subscribing to channels and listening
 * for events that are broadcast by Laravel. Echo and event broadcasting
 * allows your team to easily build robust real-time web applications.
 */

// import Echo from 'laravel-echo'

// window.Pusher = require('pusher-js');

// window.Echo = new Echo({
//  broadcaster: 'pusher',
//  key: process.env.MIX_PUSHER_APP_KEY,
//  cluster: process.env.MIX_PUSHER_APP_CLUSTER,
//  encrypted: true
// });


/* 
*For fullcalendar and reservation
*/
//import $ from 'jquery';
import 'moment';
import 'fullcalendar';
import 'tempusdominus-bootstrap-4';
import 'moment-timezone';

Package.json文件如下所示。

 {
 "private": true,
 "scripts": {
  "dev": "npm run development",
  "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
  "watch": "npm run development -- --watch",
  "watch-poll": "npm run watch -- --watch-poll",
  "hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
  "prod": "npm run production",
  "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --no-progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
 },
 "devDependencies": {
  "axios": "^0.18",
  "bootstrap": "^4.0.0",
  "cross-env": "^5.1",
  "jquery": "^3.3.1",
  "laravel-mix": "^2.0",
  "lodash": "^4.17.4",
  "popper.js": "^1.12",
  "vue": "^2.5.7"
 },
 "dependencies": {
  "fullcalendar": "^3.9.0",
  "moment": "^2.21.0",
  "moment-timezone": "^0.5.14",
  "tempusdominus-bootstrap-4": "^5.0.0-alpha18"
 }
}

你能帮我吗?我花了很多时间解决这个问题。

推荐答案

我更改了bootstrap.js,它正常工作。

global.moment = require('moment');
require('tempusdominus-bootstrap-4');
import 'fullcalendar';
import 'moment-timezone';

好了关于Tempus Domus Bootstrap4需要minom.js。(日期时间选取器)的教程就到这里就结束了,希望趣模板源码网找到的这篇技术文章能帮助到大家,更多技术教程可以在站内搜索。