Как разделить маршруты внутри приложения React

Следующий запрос MySQL сам будет вызывать один запрос, который усекает все таблицы в данной базе данных. Он обходит клавиши FOREIGN:

SELECT CONCAT(
         'SET FOREIGN_KEY_CHECKS=0; ',
         GROUP_CONCAT(dropTableSql SEPARATOR '; '), '; ',
         'SET FOREIGN_KEY_CHECKS=1;'
       ) as dropAllTablesSql
FROM   ( SELECT  Concat('TRUNCATE TABLE ', table_schema, '.', TABLE_NAME) AS dropTableSql
         FROM    INFORMATION_SCHEMA.TABLES
         WHERE   table_schema = 'DATABASE_NAME' ) as queries
0
задан Mizlul 18 January 2019 в 13:42
поделиться

1 ответ

Вам не хватает переключателя:

<Switch>
    <Route path="/someother" component={AppComponent}>
    <Route path="/products" component={ListProductComponent} />
    <Route path="/" component={AppComponent}>
</Switch>

Кроме того, ваш код будет отображать только AppComponent, так как любой URL (/, /home, /etc) начинается с косой черты, которую вы поставили в атрибуте path. Вы могли бы хотеть это как последняя страница, запасной вариант.

Атрибут path работает с подстановочным символом: path="/" -> path="/**" функционально одинаковы. Если вы хотите точный путь, добавьте exact к Маршруту.


Если вы хотите разделить маршруты на отдельные файлы, вы можете сделать это:

<Switch>
    <Route path={"/user"} component={UserRouter}/>
    <Route path={"/product"} component={ProductRouter}/>
</Switch>
// In userRouter.jsx:
export function UserRouter() {
    return <Switch>
        <Route exact path={"/user/list"} component={UserListPage}/>
        <Route exact path={"/user/signup"} component={userSignupPage}/>
        <Route exact path={"/user/profile"} component={UserProfilePage}/>
    </Switch>
};
0
ответ дан Martijn 18 January 2019 в 13:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: