Getting a "o is not a function" error only when doing a production build in vue 2.7.14

409 Views Asked by At

I'm working on a Laravel 5.7 project that has been through a few different developers. Recently one of the devs did an npm update that caused a few issues. I've got most all of those issues cleaned up, but now we are seeing an "o is not a function" error any time we try and access a variable in a vue component. This issue only shows up after an npm run prod. If we do an npm run dev everything works fine and the site looks perfect.

This has been a nightmare to debug since it only shows up in the minified production build. I've tried using a few different versions of npm and some different minor releases of vue. I know it's happening whenever we access a variable because I removed everything except for a @{{ status }} call inside of the component. Without that I get no error and with it I get that "o is not a function" error.

Here are the dependencies in our package.json:

"devDependencies": {
    "axios": "^0.18.1",
    "bootstrap": "^4.3.1",
    "cross-env": "^5.1",
    "jquery": "^3.6.2",
    "laravel-mix": "^2.1.14",
    "lodash": "^4.17.15",
    "popper.js": "^1.16.1",
    "vue": "^2.7.14",
    "vue-template-compiler": "^2.7.14"
},
"dependencies": {
    "axios-retry": "^3.1.2",
    "codemirror": "^5.65.10",
    "es6-promise": "^4.2.8",
    "inputmask": "^4.0.8",
    "mjml": "^4.4.1",
    "moment": "^2.24.0",
    "npm": "^6.11.2",
    "signature_pad": "^3.0.0-beta.3",
    "spectrum-colorpicker": "^1.8.0",
    "vue-ckeditor2": "^2.1.5",
    "vue-markdown": "^2.2.4",
    "vue-simplemde": "^1.1.2",
    "vue2-dropzone": "^3.6.0",
    "vuejs-datepicker": "^1.6.2",
    "vuex": "^3.6.2"
}
1

There are 1 best solutions below

1
El kahlaoui Taoufik On

I run into the same problem, so what i did is removing vue-bootstap package

if you changed or updated version of laravel-mix or wabpack restore the inial ones