programing

Vue Mixin 계산 함수 통과 매개 변수

bestcode 2022. 7. 11. 22:13
반응형

Vue Mixin 계산 함수 통과 매개 변수

따라서 vue i18 next 라이브러리가 사용하는 것과 마찬가지로 mixin을 사용할 수 없습니다.$t

<div>
      <strong>{{ $t("loadbundle", {lang: this.lang}) }}</strong>
</div>

소스 코드를 보면 믹스인의 계산된 속성임을 알 수 있습니다.

  Vue.mixin({
    computed: {
      $t() {
        const getKey = getByKey(this._i18nOptions, this.$i18n ? this.$i18n.i18next.options : {});

        if (this._i18nOptions && this._i18nOptions.namespaces) {
          const { lng, namespaces } = this._i18nOptions;

          const fixedT = this.$i18n.i18next.getFixedT(lng, namespaces);
          return (key, options) => fixedT(getKey(key), options, this.$i18n.i18nLoadedAt);
        }

        return (key, options) =>
          this.$i18n.i18next.t(getKey(key), options, this.$i18n.i18nLoadedAt);
      },
    }

어떻게 함수라고 부를 수 있게 만들었는지, 어떻게 매개 변수를 전달받았는지 알 수가 없어요.

업데이트될 때마다 실행되기 때문에 메서드를 사용할 수 없습니다.

주의:return (key, options) => ...bit: 함수를 반환합니다!따라서 위에서 작성한 템플릿 호출은 먼저 계산된 속성 값(함수)을 가져온 다음 일부 매개 변수를 사용하여 호출합니다.

사실상, 모든 사전 준비는$i18n오브젝트는 한 번 실행되지만 파라미터 중 하나가 변경되면 변환이 변경될 수 있습니다(예를 들어this.lang).

언급URL : https://stackoverflow.com/questions/47519838/vue-mixin-computed-function-pass-parameters

반응형