@quicktvui/web-cli 1.0.0-beta.34 → 1.0.0-beta.35

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  // @quicktvui/web-cli - web entry
2
2
  // 通过 @quicktvui/web-renderer 导入所有依赖
3
- // 动态加载主入口,确保初始化顺序正确
3
+ // 主入口由 webpack 静态加载,HMR 可追踪
4
4
 
5
5
  console.log('[Web Renderer] === Starting initialization ===')
6
6
 
@@ -49,25 +49,12 @@ styleEl.textContent = `
49
49
  document.head.appendChild(styleEl)
50
50
  console.log('[Web Renderer] Global CSS reset injected')
51
51
 
52
- // 动态加载主入口,等待加载完成后再启动引擎
53
- console.log('[Web Renderer] Importing main module...')
54
- import(__QUICKTVUI_MAIN_ENTRY__)
55
- .then(() => {
56
- console.log('[Web Renderer] Main module loaded')
57
- console.log('[Web Renderer] Starting engine...')
58
- startWebEngine(engine, APP_NAME)
59
- setTimeout(() => {
60
- console.log('[Web Renderer] === Initialization complete ===')
61
- }, 1000)
62
- })
63
- .catch((err) => {
64
- console.error('[Web Renderer] Failed to load main module:', err)
65
- })
52
+ // 启动引擎(主入口由 webpack 静态加载,会在本文件之后执行)
53
+ console.log('[Web Renderer] Starting engine...')
54
+ startWebEngine(engine, APP_NAME)
55
+ console.log('[Web Renderer] === Initialization complete ===')
66
56
 
67
- // HMR 支持
57
+ // HMR 支持 - 接受所有模块更新
68
58
  if (module.hot) {
69
- module.hot.accept(() => {
70
- console.log('[Web Renderer] HMR update received, reloading...')
71
- window.location.reload()
72
- })
73
- }
59
+ module.hot.accept()
60
+ }
@@ -104,16 +104,10 @@ const cssLoader = detectCSSLoader()
104
104
  const cliDir = path.resolve(__dirname, '..')
105
105
  const resolveLoader = (loaderName) => require.resolve(loaderName, { paths: [cliDir] })
106
106
 
107
- // 入口文件:只加载 entry-package.js,主入口通过动态 import 加载
107
+ // 入口文件:主入口作为静态入口以便 HMR 追踪
108
108
  const entryPackageFile = path.resolve(__dirname, 'entry-package.js')
109
109
  // 手动注入 webpack-dev-server 客户端(全局安装时需要)
110
110
  const webpackDevServerPath = require.resolve('webpack-dev-server/client', { paths: [cliDir] })
111
- const entryFiles = [
112
- `${webpackDevServerPath}?http://localhost:${port}`,
113
- 'webpack/hot/dev-server',
114
- 'regenerator-runtime/runtime',
115
- entryPackageFile,
116
- ]
117
111
 
118
112
  module.exports = {
119
113
  mode: 'development',
@@ -162,9 +156,15 @@ module.exports = {
162
156
 
163
157
  devtool: 'source-map',
164
158
 
165
- // 多入口配置:先加载初始化代码,再加载主入口
159
+ // 多入口配置:主入口静态加载以便 HMR 追踪
166
160
  entry: {
167
- index: entryFiles,
161
+ index: [
162
+ `${webpackDevServerPath}?http://localhost:${port}`,
163
+ 'webpack/hot/dev-server',
164
+ 'regenerator-runtime/runtime',
165
+ entryPackageFile,
166
+ mainEntry, // 静态加载主入口,HMR 可以追踪
167
+ ],
168
168
  },
169
169
 
170
170
  output: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quicktvui/web-cli",
3
- "version": "1.0.0-beta.34",
3
+ "version": "1.0.0-beta.35",
4
4
  "description": "CLI tool for QuickTVUI web development - zero configuration",
5
5
  "author": "QuickTVUI Team",
6
6
  "license": "Apache-2.0",