вложенный маршрут в ответ JS 4 [дубликат]

Как многие люди говорили об этом раньше, Java всегда имеет значение pass-by-value

Вот еще один пример, который поможет вам понять разницу ( классический своп пример ):

public class Test {
  public static void main(String[] args) {
    Integer a = new Integer(2);
    Integer b = new Integer(3);
    System.out.println("Before: a = " + a + ", b = " + b);
    swap(a,b);
    System.out.println("After: a = " + a + ", b = " + b);
  }

  public static swap(Integer iA, Integer iB) {
    Integer tmp = iA;
    iA = iB;
    iB = tmp;
  }
}

Печать:

До: a = 2, b = 3 После: a = 2, b = 3

blockquote>

Это происходит потому, что iA и iB являются новыми локальными ссылочными переменными, которые имеют одинаковое значение переданных ссылок (они указывают на a и b соответственно). Таким образом, попытка изменить ссылки iA или iB будет меняться только в локальной области, а не за пределами этого метода.

1
задан Gopal Singh Thakur 20 January 2019 в 09:35
поделиться

1 ответ

Не вкладывайте компонент Route в другой компонент Route, вместо этого добавляйте вложенный элемент Route в компонент, в который вы хотите его визуализировать.
Например:

 class App extends Component {
      render() {
        return (
          <div className="app-component">
            <Router>
              // using path="/" will throw an error
              <Route path="/root" component={Root} />
            </Router>       
           <Headers />
            {this.props.children} 
           <Footer />
          </div>
        );
      }
    }

function Root({match}) {
  return (
    <div>
      <h2>Root</h2>
      <ul>
        <li>
          <Link to={`${match.url}/home`}>Home</Link>
        </li>
      </ul>
      <Route path={`${match.path}/:nestedComponent`} component={Home} />
    </div>
  );
}

Для получения дополнительной информации о маршрутах вложений, вы должны пройти через этот Источник

0
ответ дан JS Engine 20 January 2019 в 09:35
поделиться
Другие вопросы по тегам:

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