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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

Ruby on Rails

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

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

Q&A

0回答

718閲覧

React + Ruby on Railsの実装でモジュールを介してヘッダーをブラウザに表示させたいが、表示されない。

Kagiya-masahumi

総合スコア0

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

Ruby on Rails

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

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

0グッド

0クリップ

投稿2021/03/15 05:09

前提・実現したいこと

初めまして。Ruby初学者のものです。
現在RailsとReactを使用したTodoアプリを作成しております。
参考動画:https://www.youtube.com/watch?v=vppVZsR6uoo&t=487s&ab_channel=Farstep%E3%80%90%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%AC%9B%E5%BA%A7%E3%80%91

現在ブラウザ上にJavaScriptでヘッダーを表示させようとした際に以下のメッセージが出て、ブラウザが非表示のままの状態です。
どうすれば表示できるようになるか、ご教授いただけますと幸いです。

ソースコードの過不足あればお申し付けください。
何卒よろしくお願い申し上げます。

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

ターミナル ERROR in ./app/javascript/components/AddTodo.js Module not found: Error: Can't resolve 'core-js/library/fn/reflect/es7/metadata' in '/Users/username/myprojects/todo_app/app/javascript/components' @ ./app/javascript/components/AddTodo.js 2:0-60 5:22-27 @ ./app/javascript/components/App.js @ ./app/javascript/packs/index.jsx
コンソール Uncaught Error: Cannot find module 'core-js/library/fn/reflect/es7/metadata' at webpackMissingModule (bootstrap:83) at Module../app/javascript/components/AddTodo.js (bootstrap:83) at __webpack_require__ (bootstrap:19) at Module../app/javascript/components/App.js (App.css?d67e:19) at __webpack_require__ (bootstrap:19) at Module../app/javascript/packs/index.jsx (TodoList.js:11) at __webpack_require__ (bootstrap:19) at bootstrap:83 at bootstrap:83

該当のソースコード

React

1【index.jsx】 2 3import React from 'react' 4import ReactDOM from 'react-dom' 5import { BrowserRouter } from 'react-router-dom'; 6import App from '../components/App' 7 8document.addEventListener('DOMContentLoaded', () => { 9 ReactDOM.render( 10 <BrowserRouter> 11 <App/> 12 </BrowserRouter>, 13 document.querySelector('#root'), 14 ); 15}); 16 17

JavaScript

1【AppTodo.js】 2 3import React from 'core-js/library/fn/reflect/es7/metadata' 4 5function AddTodo(){ 6 return( 7 <div> 8 AddTodo 9 </div> 10 ) 11} 12 13export default AddTodo

JavaScript

1【App.js】 2 3import React from 'react' 4import { Switch, Route, Link } from 'react-router-dom' 5import styled from 'styled-components' 6import AddTodo from './AddTodo' 7import TodoList from './TodoList' 8import EditTodo from './EditTodo' 9import './App.css' 10 11const Nabvar = styled.nav` 12 background: #dbfffe; 13 min-height: 8vh; 14 display: flex; 15 justify-content: space-around; 16 align-items: center; 17` 18 19const Logo = styled.div` 20 font-weight: bold; 21 font-size: 23px; 22 letter-spacing: 3px; 23` 24 25const NavItems = styled.ul` 26 display: flex; 27 width: 400px; 28 max-width: 40%; 29 justify-content: space-around; 30 list-style: none; 31` 32 33const NavItem = styled.li` 34 font-size: 19px; 35 font-weight: bold; 36 opacity: 0.7; 37 &:hover { 38 opacity: 1; 39 } 40` 41 42const Wrapper = styled.div` 43 width: 700px; 44 max-width: 85%; 45 margin: 20px auto; 46` 47 48function App() { 49 return ( 50 <> 51 <Nabvar> 52 <Logo> 53 TODO 54 </Logo> 55 <NavItems> 56 <NavItem> 57 <Link to="/todos"> 58 Todos 59 </Link> 60 </NavItem> 61 <NavItem> 62 <Link to="/todos/new"> 63 Add New Todo 64 </Link> 65 </NavItem> 66 </NavItems> 67 </Nabvar> 68 <Wrapper> 69 <Switch> 70 <Route exact path="/todos" component={TodoList} /> 71 <Route exact path="/todos/new" component={AddTodo} /> 72 <Route path="/todos/:id/edit" component={EditTodo} /> 73 </Switch> 74 </Wrapper> 75 </> 76 ) 77} 78 79export default App 80

bootstrap

1// The module cache 2 var installedModules = {}; 3 4 // The require function 5 function __webpack_require__(moduleId) { 6 7 // Check if module is in cache 8 if(installedModules[moduleId]) { 9 return installedModules[moduleId].exports; 10 } 11 // Create a new module (and put it into the cache) 12 var module = installedModules[moduleId] = { 13 i: moduleId, 14 l: false, 15 exports: {} 16 }; 17 18 // Execute the module function 19 modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); 20 21 // Flag the module as loaded 22 module.l = true; 23 24 // Return the exports of the module 25 return module.exports; 26 } 27 28 29 // expose the modules object (__webpack_modules__) 30 __webpack_require__.m = modules; 31 32 // expose the module cache 33 __webpack_require__.c = installedModules; 34 35 // define getter function for harmony exports 36 __webpack_require__.d = function(exports, name, getter) { 37 if(!__webpack_require__.o(exports, name)) { 38 Object.defineProperty(exports, name, { enumerable: true, get: getter }); 39 } 40 }; 41 42 // define __esModule on exports 43 __webpack_require__.r = function(exports) { 44 if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { 45 Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); 46 } 47 Object.defineProperty(exports, '__esModule', { value: true }); 48 }; 49 50 // create a fake namespace object 51 // mode & 1: value is a module id, require it 52 // mode & 2: merge all properties of value into the ns 53 // mode & 4: return value when already ns object 54 // mode & 8|1: behave like require 55 __webpack_require__.t = function(value, mode) { 56 if(mode & 1) value = __webpack_require__(value); 57 if(mode & 8) return value; 58 if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; 59 var ns = Object.create(null); 60 __webpack_require__.r(ns); 61 Object.defineProperty(ns, 'default', { enumerable: true, value: value }); 62 if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); 63 return ns; 64 }; 65 66 // getDefaultExport function for compatibility with non-harmony modules 67 __webpack_require__.n = function(module) { 68 var getter = module && module.__esModule ? 69 function getDefault() { return module['default']; } : 70 function getModuleExports() { return module; }; 71 __webpack_require__.d(getter, 'a', getter); 72 return getter; 73 }; 74 75 // Object.prototype.hasOwnProperty.call 76 __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; 77 78 // __webpack_public_path__ 79 __webpack_require__.p = "/packs/"; 80 81 82 // Load entry module and return exports 83 return __webpack_require__(__webpack_require__.s = "./app/javascript/packs/index.jsx"); 84 85

試したこと

https://qiita.com/riversun/items/63c5f08c8da604c5ec1a
https://www.codegrepper.com/code-examples/javascript/Module+not+found%3A+Can%27t+resolve+%27core-js%2Flibrary%2Ffn%2Freflect%2Fes7%2Fmetadata%27
https://qiita.com/tsuuuuu_san/items/e4fda04eef3b347128f1

core-jsのバージョンが古いから読み取れないのかと仮設し、上記のバージョンアップ及びインストールを行ったものの、ブラウザに表示されなかった。

補足情報(FW/ツールのバージョンなど)

使用機材:MacOS Big Sar
ruby :2.6.5
rails: 6.0.3.5
webpacker:4.0

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

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

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

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

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

hoshi-takanori

2021/03/15 12:35

AppTodo.js でも import React from 'react' とすれば良いのでは?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問