fix(eslint): reduce warnings in GitHub Actions deployment

- Disable formatting rules (handled by Prettier)
- Relaxed strict Vue/JS rules for demo code compatibility
- Fix syntax errors in ApiPlayground and VoiceCloningDemo
- Fix duplicate else-if condition in ApiPlayground
- Fix Promise executor async pattern in AutoregressiveAudioDemo
- Add TypeScript file support to ESLint config

Warnings reduced from 295 to 251 problems.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
sanbuphy
2026-02-18 17:38:10 +08:00
parent 8b01686e68
commit 0eba9e87e9
456 changed files with 28450 additions and 9677 deletions
@@ -18,15 +18,26 @@
:class="{ active: selectedLang === lang.name }"
@click="selectedLang = lang.name"
>
<div class="lang-icon">{{ lang.icon }}</div>
<div class="lang-name">{{ lang.name }}</div>
<div class="lang-metaphor">{{ lang.metaphor }}</div>
<div class="lang-description">{{ lang.description }}</div>
<div class="lang-icon">
{{ lang.icon }}
</div>
<div class="lang-name">
{{ lang.name }}
</div>
<div class="lang-metaphor">
{{ lang.metaphor }}
</div>
<div class="lang-description">
{{ lang.description }}
</div>
</div>
</div>
<Transition name="fade">
<div v-if="selectedLang" class="lang-detail">
<div
v-if="selectedLang"
class="lang-detail"
>
<div class="detail-header">
<span class="detail-icon">{{ getCurrentLang().icon }}</span>
<span class="detail-title">{{ getCurrentLang().name }}</span>
@@ -36,7 +47,10 @@
<div class="detail-section">
<h6>🎯 适用场景</h6>
<ul>
<li v-for="scenario in getCurrentLang().scenarios" :key="scenario">
<li
v-for="scenario in getCurrentLang().scenarios"
:key="scenario"
>
{{ scenario }}
</li>
</ul>
@@ -45,21 +59,34 @@
<div class="detail-section">
<h6> 优势</h6>
<ul>
<li v-for="pro in getCurrentLang().pros" :key="pro">{{ pro }}</li>
<li
v-for="pro in getCurrentLang().pros"
:key="pro"
>
{{ pro }}
</li>
</ul>
</div>
<div class="detail-section">
<h6> 劣势</h6>
<ul>
<li v-for="con in getCurrentLang().cons" :key="con">{{ con }}</li>
<li
v-for="con in getCurrentLang().cons"
:key="con"
>
{{ con }}
</li>
</ul>
</div>
</div>
</div>
</Transition>
<div v-if="!selectedLang" class="hint-text">
<div
v-if="!selectedLang"
class="hint-text"
>
👆 点击上方任意语言查看详细说明
</div>
@@ -18,15 +18,30 @@
:class="{ active: selectedModel === model.name }"
@click="selectedModel = model.name"
>
<div class="model-icon">{{ model.icon }}</div>
<div class="model-name">{{ model.name }}</div>
<div class="model-lang">{{ model.language }}</div>
<div class="model-desc">{{ model.description }}</div>
<div class="model-icon">
{{ model.icon }}
</div>
<div class="model-name">
{{ model.name }}
</div>
<div class="model-lang">
{{ model.language }}
</div>
<div class="model-desc">
{{ model.description }}
</div>
</div>
</div>
<Transition name="fade" mode="out-in">
<div v-if="selectedModel" :key="selectedModel" class="model-detail">
<Transition
name="fade"
mode="out-in"
>
<div
v-if="selectedModel"
:key="selectedModel"
class="model-detail"
>
<div class="detail-header">
<h6>{{ getModelInfo().title }}</h6>
</div>
@@ -35,13 +50,19 @@
<div class="stat-item">
<span class="stat-label">并发能力</span>
<div class="stat-bar">
<div class="stat-fill" :style="{ width: getModelInfo().concurrency + '%' }"></div>
<div
class="stat-fill"
:style="{ width: getModelInfo().concurrency + '%' }"
/>
</div>
</div>
<div class="stat-item">
<span class="stat-label">内存开销</span>
<div class="stat-bar">
<div class="stat-fill memory" :style="{ width: getModelInfo().memory + '%' }"></div>
<div
class="stat-fill memory"
:style="{ width: getModelInfo().memory + '%' }"
/>
</div>
</div>
</div>
@@ -54,13 +75,23 @@
<div class="pros">
<strong> 优势</strong>
<ul>
<li v-for="pro in getModelInfo().pros" :key="pro">{{ pro }}</li>
<li
v-for="pro in getModelInfo().pros"
:key="pro"
>
{{ pro }}
</li>
</ul>
</div>
<div class="cons">
<strong> 劣势</strong>
<ul>
<li v-for="con in getModelInfo().cons" :key="con">{{ con }}</li>
<li
v-for="con in getModelInfo().cons"
:key="con"
>
{{ con }}
</li>
</ul>
</div>
</div>
@@ -13,9 +13,15 @@
<div class="task-selector">
<label>选择任务</label>
<select v-model="selectedTask">
<option value="rest">REST API</option>
<option value="web">Web 应用</option>
<option value="script">数据处理脚本</option>
<option value="rest">
REST API
</option>
<option value="web">
Web 应用
</option>
<option value="script">
数据处理脚本
</option>
</select>
</div>
@@ -29,7 +35,9 @@
:key="lang.name"
class="bar-wrapper"
>
<div class="bar-label">{{ lang.name }}</div>
<div class="bar-label">
{{ lang.name }}
</div>
<div class="bar-track">
<div
class="bar-fill"
@@ -11,7 +11,9 @@
</div>
<div class="dimension-selector">
<div class="dimension-label">选择比较维度</div>
<div class="dimension-label">
选择比较维度
</div>
<div class="dimension-buttons">
<button
v-for="dim in dimensions"
@@ -37,7 +39,9 @@
:key="lang.name"
class="bar-wrapper"
>
<div class="bar-label">{{ lang.name }}</div>
<div class="bar-label">
{{ lang.name }}
</div>
<div class="bar-track">
<div
class="bar-fill"
@@ -16,9 +16,15 @@
:key="eco.name"
class="eco-card"
>
<div class="eco-icon">{{ eco.icon }}</div>
<div class="eco-name">{{ eco.name }}</div>
<div class="eco-lang">{{ eco.language }}</div>
<div class="eco-icon">
{{ eco.icon }}
</div>
<div class="eco-name">
{{ eco.name }}
</div>
<div class="eco-lang">
{{ eco.language }}
</div>
<div class="eco-stats">
<div class="stat">
<span class="stat-label">包数量</span>
@@ -17,7 +17,9 @@
class="question-card"
:class="{ active: currentQuestion === index }"
>
<div class="question-number">{{ index + 1 }}</div>
<div class="question-number">
{{ index + 1 }}
</div>
<div class="question-content">
<h6>{{ question.text }}</h6>
<div class="options">
@@ -36,19 +38,29 @@
</div>
<Transition name="fade">
<div v-if="recommendation" class="recommendation-panel">
<div
v-if="recommendation"
class="recommendation-panel"
>
<div class="rec-header">
<span class="rec-icon">{{ recommendation.icon }}</span>
<div class="rec-title">
<h6>推荐语言</h6>
<div class="rec-name">{{ recommendation.language }}</div>
<div class="rec-name">
{{ recommendation.language }}
</div>
</div>
</div>
<div class="rec-reason">
<strong>选择理由</strong>
<p>{{ recommendation.reason }}</p>
</div>
<button class="reset-btn" @click="reset">🔄 重新选择</button>
<button
class="reset-btn"
@click="reset"
>
🔄 重新选择
</button>
</div>
</Transition>
@@ -16,9 +16,15 @@
:key="model.name"
class="model-card"
>
<div class="model-icon">{{ model.icon }}</div>
<div class="model-name">{{ model.name }}</div>
<div class="model-desc">{{ model.description }}</div>
<div class="model-icon">
{{ model.icon }}
</div>
<div class="model-name">
{{ model.name }}
</div>
<div class="model-desc">
{{ model.description }}
</div>
<div class="model-languages">
<span
v-for="lang in model.languages"
@@ -13,13 +13,24 @@
<div class="control-panel">
<div class="scenario-selector">
<label>选择赛道</label>
<select v-model="selectedScenario" @change="runBenchmark">
<option v-for="scenario in scenarios" :key="scenario.id" :value="scenario.id">
<select
v-model="selectedScenario"
@change="runBenchmark"
>
<option
v-for="scenario in scenarios"
:key="scenario.id"
:value="scenario.id"
>
{{ scenario.label }}
</option>
</select>
</div>
<button class="run-btn" @click="runBenchmark" :disabled="isRunning">
<button
class="run-btn"
:disabled="isRunning"
@click="runBenchmark"
>
{{ isRunning ? '测试中...' : '▶ 开始测试' }}
</button>
</div>
@@ -34,7 +45,9 @@
:key="result.language"
class="bar-wrapper"
>
<div class="bar-label">{{ result.language }}</div>
<div class="bar-label">
{{ result.language }}
</div>
<div class="bar-track">
<div
class="bar-fill"
@@ -23,16 +23,24 @@
</button>
</div>
<Transition name="fade" mode="out-in">
<div :key="selectedLang" class="code-display">
<Transition
name="fade"
mode="out-in"
>
<div
:key="selectedLang"
class="code-display"
>
<div class="code-window">
<div class="window-header">
<div class="window-controls">
<span class="control red"></span>
<span class="control yellow"></span>
<span class="control green"></span>
<span class="control red" />
<span class="control yellow" />
<span class="control green" />
</div>
<div class="file-name">
{{ getCode(selectedLang).filename }}
</div>
<div class="file-name">{{ getCode(selectedLang).filename }}</div>
</div>
<pre class="code-content">{{ getCode(selectedLang).code }}</pre>
</div>