>  Q&A  >  본문

변수 변경 시 Vue 3 다시 로드 구성 요소

selectedLeague가 변경된 경우 구성 요소를 다시 할당하려고 합니다

으아악

LeagueTopScorers 구성 요소에서는 선택한 리그의 최고 득점자를 가져오는 API를 가져옵니다.

시도했습니다: watch, v-on:,created()

P粉090087228P粉090087228297일 전513

모든 응답(1)나는 대답할 것이다

  • P粉344355715

    P粉3443557152023-12-28 15:00:30

    确实selectedLeague변경되면 다시 렌더링되지만 1다시 설치되지는 않습니다. selectedLeaguefalsy 값에서 truthy 값으로 변경되는 경우에만 마운트됩니다(그때 v-if< /code>가 변경되기 때문입니다).

    질문에 몇 가지 문제가 있습니다.

    • 비즈니스 요구 사항(Y라고 함)을 해결할 수 있을 것으로 생각되는 기술적 측면(X라고 함)에 대해 질문하고 계십니다. 이것은 전형적인 XY 문제입니다. Y의 요구 사항을 설명하지 않겠습니까? (예: 달성하고 싶은 것). 입력이 변경될 때 출력의 어떤 변경을 확인하고 싶습니까?
    • 게시한 코드는 실행 가능한예제를 생성하기에 충분하지 않습니다. 우리는 v-select 是什么, 是什么,或者 :is 属性在 v-select가 무엇인지,
    • 가 무엇인지, <에서
    :is 속성이 어떻게 보이는지 모릅니다. /코드 >.

      귀하가 게시한 코드 조각을 토대로 다음과 같이 추측합니다.
    • v-select v-select는 vue-select 또는
    • Vuetify 선택 구성 요소
    • :is 上的工作方式与在 입니다.
    • :is는 的 init 生命周期挂钩中(例如:onMounted)在您将 selectedLeague에서와 마찬가지로
    • 에서도 동일한 방식으로 작동할 것으로 예상됩니다. 팁: 아니요. 직접 코딩하지 않는 한 의심스럽습니다

    마지막으로 중요한 것은 (예: onMounted)의 init 수명 주기 후크에 일부 코드를 삽입하고 싶은 것 같습니다. 저장된 객체는 다른 객체로 대체됩니다. . 내가 옳다면 이 동작을 달성하는 가장 쉽고 깔끔한 방법은 계산을 만드는 것입니다.

    v-if:key:selectedLeague2

    :

    으아악

    ...그리고 leagueId 更改时,上面都会创建一个 的新实例,并且仅在 leagueIdv-if, :key 및 :selectedLeague에서 사용하세요. 으아악 (

    래퍼 없음).


    leagueId가 변경될 때마다 위의 내용은

    의 새 인스턴스를 생성하고 leagueId가 false가 아닌 경우에만 렌더링합니다. 나는 이것이 당신이 기술적으로 달성하려고 하는 것이라고 믿습니다
    3. 참고:
    1selectedLeague,则使用selectedLeague.value?.id.toString()是一个 ref - 확인하려면
    onUpdated(() => console.log('updated...'))를 사용하세요. 2 每次 leagueId

    - 🎜가 🎜ref🎜인 경우 🎜selectedLeague.value?.id.toString()을 사용하세요. 🎜🎜🎜3🎜🎜🎜 - 그 동안에는 🎜leagueId가 변경될 때마다 🎜의 새 인스턴스를 생성하지 않고도 실제 비즈니스 요구 사항을 충족할 수 있다고 확신합니다. 자세한 내용 및/또는 맥락이 없으면 더 이상 도움이 될 수 없습니다 🎜

    회신하다
    0
  • 취소회신하다