2017-10-30 17 views
1

create-react-app Reactを使用して新しいアプリケーションを作成しましたが、いくつかのアプリケーションで同じコンポーネントを再利用できます。私はアプリの中からUtilsの/コンポーネントをロードしようとしているときに
だから私はこのcreate-react-appプロジェクトエラー以外のフォルダにあるコンポーネント

- App1 
- App2 
- App3 
- Utils 
    - Components 

のような構造を作成しましたが、それは最初に私にYou may need an appropriate loader to handle this file type. -errorを与えました。 私は.jsx.jsからファイルタイプを変更した、今では私に

Uncaught DOMException: Failed to execute 'createElement' on 'Document': 
The tag name provided ('/static/media/TeamSidebar.2e3fe8e5.jsx') is not 
a valid name. 

package.json、次のエラーを与えている:

{ 
    "dependencies": { 
     "bootstrap": "^4.0.0-beta", 
     "react": "^16.0.0", 
     "react-dom": "^16.0.0", 
     "react-moment": "^0.6.5", 
     "react-scripts": "1.0.14", 
     "reactstrap": "^5.0.0-alpha.3", 
     "utils": "file:../utils" 
}, 

App.js

import React, {Component} from 'react'; 
import {Components} from 'utils'; 

class App extends Component { 
    render() { 
     const {TeamSidebar} = Components; 

     return (
      <TeamSidebar teams={teamsList}/> 
     ); 
    } 
} 

答えて

-1

は、作成反応します-Appのプロジェクトはデフォルトで次のようになります:

my-app/ 
    README.md 
    node_modules/ 
    package.json 
    public/ 
    index.html 
    favicon.ico 
    src/ 
    App.css 
    App.js 
    App.test.js 
    index.css 
    index.js 
    logo.svg 

srcフォルダには、アプリケーションを構成するすべての特定のコンポーネントが含まれています。あなたはUtilsのから輸入任意のファイルにしたいとき

src/ 
    -App1 
    -App2 
    -App3 
    -Utils 
    -Components ex:(User.js) 
    ... 
    ... 

次のようにインポートしてみてください。あなたのケースでは、あなたのすべてのこのようなSRCフォルダ内のファイル/フォルダを配置する必要がありますあなたはこうすることができます:

import NameYourFile '../Utils/WhatEverFile'; 

希望します!

+0

このモジュールが見つかりません:プロジェクトsrc /ディレクトリの外にある../../utilsをインポートしようとしました。 src /以外の相対インポートはサポートされていません。 src /の中で移動するか、プロジェクトのnode_modules /からシンボリックリンクを追加することができます。 – CreasolDev

+0

あなたのアプリはsrcフォルダ内にありますかどうか? –

+0

はい、utilsコンポーネント(共有されているもの)ではありません – CreasolDev

関連する問題