簡體   English   中英

Laravel使用Webpack Mix導入JavaScript自定義文件

[英]Laravel import javascript custom file with webpack mix

我正在嘗試在Laravel 5.4項目中定義javascript函數(使用Laravel樣板)。 我有一個帶函數的custom.js文件。

function displayDef(){
    $("#worddef").html("Yippee");
}

該文件通過webpack.mix.js包含在資產中,並且在編譯后可以在frontend.js中找到。

問題:

函數未定義:未捕獲ReferenceError:未定義displayDef

該函數存在於已編譯的js文件中:

 /* 36 */
    /***/ (function(module, exports, __webpack_require__) {

    /* WEBPACK VAR INJECTION */(function($) {/* 
     * Local functions
     *
     */

    function displayDef() {
    ...

我不知道我應該如何訪問這些功能。 另外,如果我嘗試將其放在另一個文件中:

.js([
    'resources/assets/js/chinese.js'
], 'public/js/vendor.js')

我只得到另一個相同的文件。

令我感到驚訝的是,沒有任何關於這個問題的答案:如何在Laravel 5.4中使用mix正確定義和訪問javascript函數?

mix使用js()函數用於編譯模塊捆綁文件。

從Laravel網站:

mix.js('resources/assets/js/app.js', 'public/js');

使用此單行代碼,您現在可以利用:

  • ES2015語法。
  • 模組
  • .vue文件的編譯。
  • 縮小生產環境。

如果此函數是舊版javascript中的,則可以使用script函數對其進行編譯。

對於不需要JavaScript進行Webpack編譯的舊項目,此選項特別有用。

有關更多信息,請參見: https : //laravel.com/docs/5.4/mix#working-with-scripts

在您的項目根目錄中,運行更新

npm update

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM