zhongshujie
2024-12-20 e673aab74e5ab080e55d1e5706aa1d75322857a8
src/App.vue
@@ -8,50 +8,69 @@
      v-if="activeBook.name == 'sportsAndHealth'"
    ></sportsAndHealth>
    <artAndDance v-if="activeBook.name == 'artAndDance'"></artAndDance>
    <artAndDrama v-if="activeBook.name == 'artAndDrama'"></artAndDrama>
    <mathBook v-if="activeBook.name == 'mathBook'"></mathBook>
    <botany v-if="activeBook.name == 'botany'"></botany>
    <civilAviation v-if="activeBook.name == 'civilAviation'"></civilAviation>
    <civilServices v-if="activeBook.name == 'civilServices'"></civilServices>
    <meetingPlanners v-if="activeBook.name == 'meetingPlanners'"></meetingPlanners>
    <aviationBasicSkills v-if="activeBook.name == 'aviationBasicSkills'"></aviationBasicSkills>
    <aviationSafety  v-if="activeBook.name == 'aviationSafety'"></aviationSafety>
  </div>
</template>
<script>
import childHealth from "./books/childHealth/view/index.vue";
import lifeCare from "./books/lifeCare/index.vue";
import embedded from "./books/embedded/view/index.vue";
import english from "./books/English/view/index.vue";
import sportsAndHealth from "./books/sportsAndHealth";
import artAndDance from './books/artAndDance/view/index.vue'
  // 解决ERROR ResizeObserver loop completed with undelivered notifications.//问题的
const debounce = (fn, delay) => {
  let timer = null;
  return function () {
    let context = this;
    let args = arguments;
    clearTimeout(timer);
    timer = setTimeout(function () {
      fn.apply(context, args);
    }, delay);
  };
};
// 解决ERROR ResizeObserver loop completed with undelivered notifications.
const _ResizeObserver = window.ResizeObserver;
window.ResizeObserver = class ResizeObserver extends _ResizeObserver {
  constructor(callback) {
    callback = debounce(callback, 16);
    super(callback);
  }
};
export default {
  name: "App",
  components: {
    childHealth,
    lifeCare,
    embedded,
    english,
    sportsAndHealth,
    artAndDance
    childHealth: () => import("./books/childHealth/view/index.vue"),
    lifeCare: () => import("./books/lifeCare/view/index.vue"),
    embedded: () => import("./books/embedded/view/index.vue"),
    english: () => import("./books/english/view/index.vue"),
    sportsAndHealth: () => import("./books/sportsAndHealth/view/index.vue"),
    artAndDance: () => import("./books/artAndDance/view/index.vue"),
    mathBook: () => import("./books/mathBook/view/index.vue"),
    artAndDrama: () => import("./books/artAndDrama/view/index.vue"),
    botany: () => import("./books/botany/view/index.vue"),
    civilAviation: () => import("./books/civilAviation/view/index.vue"),
    civilServices: () =>import("./books/civilServices/view/index.vue"),
    meetingPlanners: () =>import("./books/meetingPlanners/view/index.vue"),
    aviationBasicSkills: () => import("./books/aviationBasicSkills/view/index.vue"),
    aviationSafety: ()=> import("./books/aviationSafety/view/index.vue"),
  },
  data() {
    return {
      activeBook: {}
      activeBook: {},
    };
  },
  async created() {
    if (this.setGlobalState) {
      this.setGlobalState({
        initTestBook: async (bookId, tryPageCount) => {
          // this.activeBook = await this.config.getBookConfig(this.config.resourceCtx + bookId);
          if (
            // "http://182.92.203.7:3007/books/resource/"
            // "https://jsek.bnuic.com/books/resource/"
            this.config.resourceCtx ==
            "http://182.92.203.7:3007/books/resource/"
          ) {
            this.config.resourceCtx = this.config.resourceCtx + bookId;
          }
          this.activeBook = await this.config.getBookConfig(
            process.env.VUE_APP_RESOURCE_CTX + process.env.VUE_APP_BOOK_ID
          );
          this.config.activeBook = this.activeBook;
          this.config.goodsStore = this.activeBook.storeRefcode;
          this.activeBook = await this.config.getBookConfig(
            this.config.resourceCtx
          );
          if (tryPageCount) {
            this.activeBook.tryPageCount = tryPageCount;
          }
@@ -59,27 +78,49 @@
            (this.$store.state.qiankun, this.$store.state.qiankun.getBookConfig)
          ) {
            this.$store.state.qiankun.getBookConfig({
              bookConfig: this.activeBook
              bookConfig: this.activeBook,
            });
          }
        }
        },
      });
    } else {
      // childHealth
      // lifeCare
      // sportsAndHealth
      // embedded
      // english
      // artAndDance
      // artAndDrama
      // mathBook
      // civilAviation
      // civilServices
      // meetingPlanners
      // aviationBasicSkills
      // aviationSafety
      this.activeBook = await this.config.getBookConfig(
        // childHealth
        // lifeCare
        // sportsAndHealth
        // embedded
        // english
        // artAndDance
        this.config.resourceCtx + "artAndDance"
      process.env.VUE_APP_RESOURCE_CTX +
        (process.env.VUE_APP_ENV == "product"
          ? process.env.VUE_APP_BOOK_ID
          : "aviationSafety")
      );
      // this.activeBook = await this.config.getBookConfig(
      //   'http://182.92.203.7:3007/books/resource/'+
      //   (process.env.VUE_APP_ENV == "product"
      //     ? process.env.VUE_APP_BOOK_ID
      //     : "botany")
      // );
      // 测试试读30页
      // this.activeBook.tryPageCount = 10;
      this.config.activeBook = this.activeBook;
      this.config.goodsStore = this.activeBook.storeRefcode;
    }
  }
  },
  methods: {
    but() {
      console.log(this.activeBook, "this.activeBook789");
    },
  },
};
</script>
@@ -88,18 +129,21 @@
body {
  width: 100%;
  height: 100%;
  margin: 0;
  margin: 0 !important;
}
#app {
  width: 100%;
  height: 100%;
}
.highLight {
  border: 1px dashed rgba(255, 255, 255, 0);
  border-radius: 5px;
  padding: 3px 0;
  cursor: pointer;
}
.highLight:hover {
  border: 1px dashed #949494 !important;
}
@@ -113,6 +157,7 @@
  text-underline-thickness: 2px;
  cursor: pointer;
}
.underline:hover {
  border: 1px dashed #949494 !important;
}
@@ -174,8 +219,7 @@
  margin: auto;
}
.openImgBox img{
.openImgBox img {
  cursor: zoom-in;
}
</style>