Maison  >  Article  >  cadre php  >  Résumé des problèmes liés à l'utilisation de Laravel-mix dans Homestead

Résumé des problèmes liés à l'utilisation de Laravel-mix dans Homestead

藏色散人
藏色散人avant
2021-03-31 17:31:542433parcourir

Ce qui suit est un résumé des problèmes liés à l'utilisation de laravel-mix dans Homestead de la colonne du didacticiel laravel. J'espère que cela sera utile aux amis dans le besoin !

Selon la documentation officielle de laravel, j'ai rencontré de nombreux problèmes lors de la préparation de l'utilisation de laravel-mix. De nombreux étudiants auraient dû rencontrer ces problèmes. Lorsque j'ai rencontré le même problème, j'ai passé du temps à résoudre ces problèmes. Je ferai une note ici pour aider tout le monde à réduire le temps de remplissage des fosses.

Environnement

  • laravel v5.4

  • noeud v6.10.2

  • npm v3.10.10

Les versions par défaut de node et npm dans Homestead sont comme indiqué ci-dessus

Problèmes

1. apparaît une erreur de lien symbolique

Résumé des problèmes liés à lutilisation de Laravel-mix dans Homestead

Cette erreur est causée par une lecture non attentive de la documentation officielle. Vous devez exécuter npm install --no-bin-links

si vous utilisez un système Windows. ou exécuté sous Windows Pour la VM sur le système, vous devez activer --no-bin-links lors de l'exécution de la commande npm install

2 cross-env : not found

Exécuter. npm correctement. Une fois l'installation réussie, exécutez npm run dev affichera une erreur cross-env:not found. Le contenu de package.json dans laravel 5.4 est le suivant :

{
  "private": true,
  "scripts": {
    "dev": "npm run development",
    "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "watch": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "watch-poll": "npm run watch -- --watch-poll",
    "hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
    "prod": "npm run production",
    "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
  },
  "devDependencies": {
    "axios": "^0.16.2",
    "bootstrap-sass": "^3.3.7",
    "cross-env": "^5.0.1",
    "jquery": "^3.1.1",
    "laravel-mix": "^1.0",
    "lodash": "^4.17.4",
    "vue": "^2.1.10"
  }
}

Veuillez le modifier comme suit

{
  "private": true,
  "scripts": {
    "dev": "npm run development",
    "development": "node node_modules/cross-env/dist/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "watch": "node node_modules/cross-env/dist/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "watch-poll": "npm run watch -- --watch-poll",
    "hot": "node node_modules/cross-env/dist/bin/cross-env.js NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
    "prod": "npm run production",
    "production": "node node_modules/cross-env/dist/bin/cross-env.js NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
  },
  "devDependencies": {
    "axios": "^0.16.2",
    "bootstrap-sass": "^3.3.7",
    "cross-env": "^5.0.1",
    "jquery": "^3.1.1",
    "laravel-mix": "^1.0",
    "lodash": "^4.17.4",
    "vue": "^2.1.10",
    "vue-loader": "^13.0.0"
  }
}

Faites attention à la différence dans les scripts

3. ou répertoire, scandir '…/node_modules/node-sass/vendor

Reconstruisez node-sass Veuillez vous assurer d'exécuter la commande suivante :

npm rebuild node-sass --no-bin-links

4. . TypeError : loader .charAt n'est pas une fonction

Besoin d'installer la dernière version de vue-loader

npm install vue-loader --save-dev --no-bin-links

Fin

Initialement prévu. utiliser laravel+vue2 pour écrire Une petite démo, j'ai rencontré les 4 problèmes ci-dessus pendant le processus d'installation et de fonctionnement. Si vous les résolvez comme ci-dessus, vous pouvez essentiellement l'exécuter normalement. Pour toute question, vous pouvez laisser un message pour communiquer.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer