如何在vue和laravel中整合materialize js

how to integration materialize js in vue and laravel

我试图在 Vue 中实现 require 和 Laravel

bootstrap.js我有

window.Materialize = require('materialize-css');

App.vue 组件中我有

mounted(){
  Materialize.toast('I am a toast!', 4000)
}

并收到

"Uncaught ReferenceError: Materialize is not defined"

留言。

要么删除带有 materialize js 的脚本标记,要么确保在需要 materialize 之前加载 jquery。 我想你有一个 browserify 设置,如果你这样做,你可以做这样的事情:

require('jquery')(window);
require('materialize-css')(window); 

或类似的东西:

global.jQuery = require('jquery')
global.Materialize = require('materialize-css')

或者全局导入 jQuery 然后简单地 var Materialize=require('materialize-css') 并改用变量。

对于 webpack 设置,为您通过 npm 安装并需要全局的东西添加一个插件:

  plugins:[
   new webpack.ProvidePlugin({
   $: "jquery",
   jQuery:'jquery',
   jquery:'jquery'
 }),
],