laravel + vue.js環境構築


laravelのbladeとvue.jsの記述が被っている問題

  • vueの書き方で{{ message }}等波括弧で閉じるとこはbladeの記述と被るため@{{ message }}にする
    忘れると以下のエラーが出る
    Use of undefined constant message - assumed 'message' (this will throw an Error in a future version of PHP)

環境設定

  • composer.jsonファイルに必要な情報追加 axiosなど
  • package.jsonに情報追加
  • cross-envを削除して"vue": "^2.6.00"を追加しています。
package.json
{
    "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": "npm run development -- --watch",
        "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 --no-progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
    },
    "devDependencies": {
        "axios": "^0.19",
        "cross-env": "^5.1",
        "laravel-mix": "^4.0.7",
        "lodash": "^4.17.13",
        "resolve-url-loader": "^2.3.1",
        "sass": "^1.15.2",
        "sass-loader": "^7.1.0",
        "vue": "^2.6.00"
    }
}
  • composerで環境構築
cmd
composer update
  • 以下入っていなければインストール
cmd
curl --silent --location https://rpm.nodesource.com/setup_10.x | bash -

yum install nodejs
npm -v
node -v
  • laravelをインストールしたディレクトリで以下実行
cmd
npm -g install cross-env cross-spawn
npm install --no-bin-links
  • フロントエンドのビルド
cmd
npm run dev
    • error code ELIFECYCLEの場合
cmd
# インストールされたjsモジュールを全部消す
rm -rf node_modules

# インストールされたjsモジュールのバージョン情報を消す
rm package-lock.json yarn.lock

# npmのキャッシュをクリアする
npm cache clear --force

# 再度jsモジュールを全部入れ直して、実行する
npm install
npm run dev

コンパイルを自動で実行する

cmd
npm run watch-poll