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

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

新規登録して質問してみよう
ただいま回答率
85.46%
Vue.js

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

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Q&A

解決済

1回答

991閲覧

Rails Vueで'Hello Vue!'が表示されない

ko-u

総合スコア61

Vue.js

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

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

0グッド

0クリップ

投稿2020/02/15 04:15

編集2020/02/15 04:17

現在、Dockerを使ってRailsの環境構築をしております。

application.htmlのbodyタグにhello_vueを読み込むようにしているのですが、呼ばれません。
(呼ばれているならHello Vue!と表示されます)

コンソール上にも、ログにもエラーが出ていないので戸惑っております。

どこか気になった点でも、ご教示頂けますと幸いです。


dockerfile

FROM

1 2RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \ 3 && echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list 4 5RUN apt-get update -qq && apt-get install -y nodejs postgresql-client yarn 6RUN mkdir /app 7WORKDIR /app 8COPY Gemfile /app/Gemfile 9COPY Gemfile.lock /app/Gemfile.lock 10RUN bundle install 11COPY . /myapp 12 13# Add a script to be executed every time the container starts. 14COPY entrypoint.sh /usr/bin/ 15RUN chmod +x /usr/bin/entrypoint.sh 16ENTRYPOINT ["entrypoint.sh"] 17EXPOSE 3000 18 19# Start the main process. 20CMD ["rails", "server", "-b", "0.0.0.0"]

docker-compose.yaml

version: '3' services: db: image: postgres volumes: - ./tmp/db:/var/lib/postgresql/data app: build: . command: bash -c "rm -f tmp/pids/server.pid && bundle exec rails s -p 3000 -b '0.0.0.0'" volumes: - .:/app ports: - "3000:3000" depends_on: - db

application.html

<body> <%= yield %> <%= javascript_pack_tag 'hello_vue' %> </body>

hello_vue.js

import Vue from 'vue' import App from '../app.vue' document.addEventListener('DOMContentLoaded', () => { const app = new Vue({ render: h => h(App) }).$mount() document.body.appendChild(app.$el) console.log(app) })

app.vue

<template> <div id="app"> <p>{{ message }}</p> </div> </template> <script> export default { data: function () { return { message: "Hello Vue!" } } } </script> <style scoped> p { font-size: 2em; text-align: center; } </style>

やったこと

上記の環境で、docker-compose up

ルーティングは合わせております。

hello_vue.jsapp.vueは初期状態のままで編集はしていません

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

shgtkshruch

2020/02/15 04:24 編集

ブラウザのコンソールにエラーメッセージは表示されていませんか? `javascript_pack_tag`で埋め込んだ 'hello_vue' がブラウザで読み込めているかどうかが知りたいです。
ko-u

2020/02/15 04:28

すみません、もう一回vueをinstallしてbuildし直したら大丈夫でした! お騒がせしました・・・
shgtkshruch

2020/02/15 04:41

いえいえ、解決できてよかったです。
guest

回答1

0

自己解決

すみません、もう一回vueをinstallしてbuildし直したら大丈夫でした!

お騒がせしました・・・

投稿2020/02/15 04:29

ko-u

総合スコア61

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問