Laravel Elixir:创建另一个javascript文件中定义的javascript类的对象

时间:2017-01-31 13:52:33

标签: webpack laravel-5.3 vuejs2 laravel-elixir

我使用了laravel 5.3和vuejs。我已经定义了一个名为' Form'的javascript类。在一个名为form.js的js文件中,我想在app.js文件中创建该类的对象。我在webpack中添加了两个js文件,我还需要' form.js' app.js中的文件但是我收到以下错误:

Uncaught ReferenceError: Form is not defined ...

这是我的app.js代码:

require('./bootstrap');
require('./form.js');

formElm = document.getElementById('form');

new Vue({
    el: "#form",
    data: {
        form: new Form(formElm)
    },
    methods: {
        ....
    }
});

这是我的form.js代码:

class Form {
    constructor(formElm) {
        ...
    }
    ...
}

这就是我在gulpfile.js中添加js文件的方式:

elixir(mix => {
    mix.sass('app.scss')
       .webpack(['app.js', 'form.js'], 'public/js/app.js');
});

我错过了什么吗?

1 个答案:

答案 0 :(得分:1)

我猜您必须将其导出才能使用它。在您的Form类中: module.exports=Form或者如果您使用es6导入语法export default Form

在您的应用中,js var Form = require('./form.js')应该可以正常运行