fix(runtime): e2e 发现的 3 个 bug 修复
- download: desktop_download_apps SingleChildScrollView 加 primary:true (Scrollbar 缺 ScrollPosition) - contact-stores: checkDomainAvailability async 后 setState 加 mounted 保护 (dispose 后 setState) - buy-service: _loadData 加 data 结构校验 + mounted 保护 (API 400 无效参数时 data 为错误结构 -> RangeError)
This commit is contained in:
21
tools/e2e/capture_data2.js
Normal file
21
tools/e2e/capture_data2.js
Normal file
@@ -0,0 +1,21 @@
|
||||
const { chromium } = require('playwright');
|
||||
(async () => {
|
||||
const browser = await chromium.launch({ headless: true });
|
||||
const page = await (await browser.newContext({viewport:{width:1280,height:900}})).newPage();
|
||||
const logs = [];
|
||||
page.on('console', m => logs.push(m.text()));
|
||||
page.on('pageerror', e => logs.push('PAGEERR: ' + e.message));
|
||||
await page.goto('http://127.0.0.1:8099/buy-service/1/pos', { waitUntil: 'load' }).catch(()=>{});
|
||||
await page.waitForTimeout(7000);
|
||||
// 找 data 打印 + RangeError
|
||||
const dataLog = logs.find(l => l.startsWith('data:'));
|
||||
console.log('=== data ===', dataLog ? dataLog.slice(0,400) : '(无)');
|
||||
// 看 service_selections / options 部分
|
||||
if (dataLog) {
|
||||
const m = dataLog.match(/service_selections:[^,}]+/);
|
||||
if (m) console.log('service_selections:', m[0].slice(0,200));
|
||||
const o = dataLog.match(/options:[^]]*\]/);
|
||||
if (o) console.log('options:', o[0].slice(0,200));
|
||||
}
|
||||
await browser.close();
|
||||
})();
|
||||
Reference in New Issue
Block a user