2017-12-21 14 views
0

問題があります。反応を使って/ページで実行されるメインスクリプトを避けるには?

私は私のウェブサイトに反応を使用しています。そして、私がしたいことは、ポートフォリオのように完全に別のページを/(例えばwww.test.com/FirstPage www.test.com/SecondPage)持っていることです、そして、私は彼らがそれ自身のjsで独自のnavボディとフッターを持ってほしいファイルなど。しかし、私はいくつかの問題に直面する

今私はwww.test.comのような私のメインのウェブサイトを持っていると私はwww.test.com/differentoneで異なるものを作成し、すべてのCSSのクラス(それらが同じ場合メインのウェブサイトのような名前)とjavascriptも実行されます。私はそれを避けるにはどうすればいいですか、私はそれが/ CSS/CSS/Webサイトの継承なしに完全に異なっていることを望みます。ルーティングは、ページを独立させることさえできますか?

原因メインページのjavascriptファイルであっても、/ SecondPageにいるときに起動しようとしますが、メインのWebページにあるコンテンツが見つからず、クラッシュします。

他のすべてのファイルの名前は完全に異なる場合もありますが、同じです。私は、私はあなたが反応し、ルータでこれを扱うことができる

I have my folder now like this

答えて

0

を理解することが明確に十分に説明願っています。以下に、小さなサンプルコードを示します。

<Router history={browserHistory}> 
    <Route path='/dashboard' component={App} onEnter={requireAuth} > 
     <IndexRoute component={MainContent} onEnter={requireAuth} /> 
     <Route path='/notes' component={Notelist} onEnter={requireAuth}></Route> 
    </Route> 
    <Route path='/invite/*' component={Invite}></Route> 
    <Route path='/' component={Login}> </Route> 
    <Route path='/changepassword/*' component={ChangePassword}></Route> 
    </Router> 

これは、ルートタグ内で異なるCSSラッピングを使用してコンポーネントを処理する方法です。ここでログインコンポーネントは異なるCSSを持ちますが、Appコンポーネントは異なるCSSを持つメインのダッシュボードページです。

すべてのCSSファイルをスタイルフォルダに保存し、main.jsでこのように呼び出すことができます。

import './styles/main.scss'; 
+0

よく、私はちょうどこのようにしています。そして、それは別のCSSファイルを読み込みますが、問題はそれがすべての読み込みとにかく、どんなルートであっても私はCSSを含めることはできませんが、それでも読み込みます。私の意味は次のようなものです:例えば、私のMainComponentの.navbarクラスとmaincomponent.cssのnavbarには、いくつかの.navbarスタイリングがあります。また、コンポーネント(例:AnotherComponent)のルートを追加し、同じ.navbarクラスのnavbarを持つと、それをAnotherComponentにインポートしていなくてもmaincomponents.cssを読み込みます。 javascriptファイルと同じですが、どこでも重要なコンポーネントを実行していますか? – empeK

関連する問題