Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Popup can't open after hot reloading with some vue3 script changed on vite

Đang mở
#4,341 1 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
55/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Ít trao đổi
Công nghệ
javascript, vite
Lĩnh vực
frontend

Hướng nghiên cứu

Bắt đầu với phần thiết lập Framework7 trong main.js cùng với trạng thái popup và mã handleOpen trong App.vue. Chạy npm run dev trong dự án Vite Vue đã tái hiện, kích hoạt script hot reload được mô tả và xác minh rằng popup vẫn mở sau đó mà không cần làm mới trình duyệt.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

  • Framework7 version: 8.3.4
  • Vue.js version: 3.5.24
  • Platform and Target: win11 chrome browser
  • Live Link or CodeSandbox: none
Describe the bug

Popup can't open after hot reloading with some script changed on vite, refreshing the website will help.
PS: Changing some html may not make popup not function.

To Reproduce

Steps to reproduce the behavior:

  1. Create a new vite vue project: npm create vite@latest, choose vue and javascript
  2. Install framework7: npm i framework7 framework7-vue
  3. In main.js
import { createApp } from 'vue'
import './style.css'

import Framework7 from 'framework7/lite-bundle'
import Framework7Vue, { registerComponents } from 'framework7-vue/bundle'
import 'framework7/css/bundle'
Framework7.use(Framework7Vue)

import App from './App.vue'

const app = createApp(App)
registerComponents(app)
app.mount('#app')

  1. In App.vue
<script setup>
import { reactive } from 'vue'
const f7params = {
  name: 'My App',
  theme: 'md',
  version: '1.0.0',
}

const edit = reactive({
  popupOpened: false,
})

const handleOpen = () => {
  edit.popupOpened = true
  console.log('handleOpen')
}
</script>

<template>
  <div id="app">
    <f7-app v-bind="f7params">
      <f7-page>
        <f7-block>
          <f7-button fill round style="width: 50%;" @click="handleOpen">open</f7-button>
        </f7-block>
        <f7-popup v-model:opened="edit.popupOpened" :closeByBackdropClick="false">
          <f7-page>
            <f7-navbar title="Edit">
              <f7-nav-right>
                <f7-link popup-close>Confirm</f7-link>
              </f7-nav-right>
            </f7-navbar>
          </f7-page>
        </f7-popup>
      </f7-page>
    </f7-app>
  </div>
</template>

<style>
body, html, #app {
  width: 100%;
  height: 100%;
  overflow: hidden;
  margin: 0;
  padding: 0;
  outline: none;
}
</style>
  1. Run app: npm run dev
  2. Click the open button, the popup will show, then close it
  3. Change open to Open, save file, Click the Open button, the popup will show, then close it
  4. Change log in handleOpen, like
const handleOpen = () => {
  edit.popupOpened = true
  console.log('handleOpen1')
}

Click the Open button, nothing happened.

Expected behavior

After changing script and save, a hot-reload invoked, popup can still be opened.

Actual Behavior

After changing script and save, a hot-reload invoked, popup can't be opened, unless you refresh the browser.

Ngôn ngữ chính
JavaScript
Star
18.8k
Fork
3.2k
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của framework7io/framework7

Tất cả issue của framework7io/framework7

Issue tương tự

Thêm issue về JavaScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.