Laravel 5.5 - 找不到所需的 jQuery/Javascript 插件
Laravel 5.5 - Required jQuery/Javascript plugins can't be found
我正在使用 require
为我的项目添加 Javascript 插件,但由于某种原因,浏览器无法找到这些插件。启动 npm run dev
将编译我需要的所有脚本(脚本也位于编译文件中),但是当 运行 项目在浏览器中时,它根本无法工作。
[Vue warn]: Error in mounted hook: "TypeError: $(...).datepicker is
not a function"
这是我的文件:
app.js
require('./bootstrap');
window.Vue = require('vue');
Vue.component('example-component', require('./components/ExampleComponent.vue'));
new Vue({
el: '#app',
mounted: function() {
$( "#datepicker" ).datepicker();
}
});
bootstrap.js
window._ = require('lodash');
try {
window.$ = window.jQuery = require('jquery');
require('bootstrap');
window.datepicker = require('jquery-datepicker');
} catch (e) {}
window.axios = require('axios');
window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
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');
}
webpack.mix.js
let mix = require('laravel-mix');
mix.js('resources/assets/js/app.js', 'public/js')
.sass('resources/assets/sass/app.scss', 'public/css');
有人能帮帮我吗?
终于按照这些说明自己找到了解决方案..
https://github.com/JeffreyWay/laravel-mix/blob/master/docs/jquery-ui.md
你必须在 app.js
中这样做
import $ from 'jquery';
window.$ = window.jQuery = $;
import 'jquery-ui/ui/widgets/datepicker.js';
现在您可以按照自己喜欢的方式调用库了。
我想这也适用于其他 JS 库..
我正在使用 require
为我的项目添加 Javascript 插件,但由于某种原因,浏览器无法找到这些插件。启动 npm run dev
将编译我需要的所有脚本(脚本也位于编译文件中),但是当 运行 项目在浏览器中时,它根本无法工作。
[Vue warn]: Error in mounted hook: "TypeError: $(...).datepicker is not a function"
这是我的文件:
app.js
require('./bootstrap');
window.Vue = require('vue');
Vue.component('example-component', require('./components/ExampleComponent.vue'));
new Vue({
el: '#app',
mounted: function() {
$( "#datepicker" ).datepicker();
}
});
bootstrap.js
window._ = require('lodash');
try {
window.$ = window.jQuery = require('jquery');
require('bootstrap');
window.datepicker = require('jquery-datepicker');
} catch (e) {}
window.axios = require('axios');
window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
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');
}
webpack.mix.js
let mix = require('laravel-mix');
mix.js('resources/assets/js/app.js', 'public/js')
.sass('resources/assets/sass/app.scss', 'public/css');
有人能帮帮我吗?
终于按照这些说明自己找到了解决方案..
https://github.com/JeffreyWay/laravel-mix/blob/master/docs/jquery-ui.md
你必须在 app.js
中这样做import $ from 'jquery';
window.$ = window.jQuery = $;
import 'jquery-ui/ui/widgets/datepicker.js';
现在您可以按照自己喜欢的方式调用库了。
我想这也适用于其他 JS 库..