質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.50%

  • Laravel 5

    2387questions

    Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

  • Vue.js

    1116questions

    Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

  • Vuetify.js

    23questions

Vuetify導入のためLaravel Mixにcss-loaderを入れるとコンパイルエラーになる。

解決済

回答 2

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 107

EjiOsa

score 2

前提・実現したいこと

LaravelでVue.jsを使用しています。vuetifyの導入を考えています。
Vuetifyのドキュメントにcss-loaderが必要だと記載があり、yarn add css-loader -Dで導入をしました。
すると、以下のエラーが発生します。
yarn remove css-loaderで削除するとnot foundのエラーもなくなってCompiled successfullyとなりvueの表示もできます。
原因はcss-loaderでパスの指定方法等の問題ではないと考えています。

発生している問題・エラーメッセージ

ERROR  Failed to compile with 8 errors                                                               
These relative modules were not found:

該当のソースコード

{
    "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": {
        "@mdi/font": "^3.5.94",
        "axios": "^0.18",
        "bootstrap": "^4.0.0",
        "cross-env": "^5.1",
        "jquery": "^3.2",
        "laravel-mix": "^4.0.7",
        "lodash": "^4.17.5",
        "popper.js": "^1.12",
        "resolve-url-loader": "^2.3.1",
        "sass": "^1.15.2",
        "sass-loader": "^7.1.0",
        "style-loader": "^0.23.1",
        "vue": "^2.5.17",
        "vue-template-compiler": "^2.5.21"
    },
    "dependencies": {
        "eslint": "^5.12.1",
        "material-design-icons-iconfont": "^4.0.5",
        "switch-php": "^1.1.3",
        "vee-validate": "^2.1.5",
        "vue-router": "^3.0.2",
        "vuetify": "^1.5.1"
    }
}

試していること

現在は、css-loaderが原因と考えてcss-loaderの動きやsass-loaderとの衝突等の方向性で調べています。
vuetifyは一部分は導入できたのですが、スタイル崩れやmdiのアイコンが反映されないのでやはりcss-loaderが必要だと考えています。

・css-loader導入時にwarningでwebpackないことを指摘されていたので、yarn add webpackしましたがコンパイルエラーになりyarn remove webpackしてコンパイルが再度通るようになりました。

教えて欲しいこと

最終的にはvuetifyを使用できれば良いです。
vuetifyにcss-loaderは不要だとか、何か代替案や近い症状で解決した例があれば助かります。
また、どのファイルが必要かも判っていないので必要なファイル等があれば教えてください。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

check解決した方法

0

Vuetifyの表示エラー

vuetify自体がレンダリングされなかったエラーに関しては、
[Vuetify] Multiple instances of Vue detected
If you're seeing "$attrs is readonly", it's caused by thisのエラーがあり、もともと使用していたwindow.Vue = require('vue');と新たに追加したimport Vue from 'vue'と衝突していたために表示できていなかった。らしい。
window.Vueの方を削除してレンダリングされるようになった。

スタイル崩れ

これはstylus stylus-loaderが足りなかったようで、yarn add stylus stylus-louderでスタイル崩れは解消した。
アラカルトの方にスタイルに関しての記載があり、読み飛ばしてしまっていた。

アイコン表示は未解決

まずはローカルで使用したいと考えて、ドキュメントに沿って

$ yarn add material-design-icons-iconfont -D
// OR
$ npm install material-design-icons-iconfont -D


をして、import 'material-design-icons-iconfont/dist/material-design-icons.css' も追加したがアイコンは表示されずに□が表示。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

css-loaderはLaravel mixがインストールしてるので不要。
https://github.com/JeffreyWay/laravel-mix/blob/master/package.json

mixはv1
最新はv2
バージョンが違うのが原因では。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/02/27 20:03

    回答ありがとうございます。
    確かにLaravel Mixのcss-loaderはv1系でした。ですので、Laravel Mix内のcss-loaderを最新のものにアップグレードしました。
    結果、Vuetifyの挙動は変わりません。

    キャンセル

同じタグがついた質問を見る

  • Laravel 5

    2387questions

    Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

  • Vue.js

    1116questions

    Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

  • Vuetify.js

    23questions