| 1234567891011121314151617181920 |
- $path = 'd:\Users\chenjun\kyj-yanglao-web-new\src\views\elderly\apply\check-in\ContractForm.vue'
- $content = Get-Content $path -Raw -Encoding UTF8
- # 模式1:<span class="fill">{{ contractForm.field || '___' }}</span>
- $pattern1 = '<span class="fill">\{\{\s*contractForm\.(\w+)\s*\|\|\s*''([^'']+)''\s*\}\}</span>'
- $replacement1 = '<template v-if="isTextMode"><span class="fill">{{ contractForm.$1 || ''$2'' }}</span></template><input v-else v-model="contractForm.$1" class="text-input" placeholder="请输入" style="max-width: 180px;" />'
- $matches1 = [regex]::Matches($content, $pattern1)
- Write-Host "模式1匹配数: $($matches1.Count)"
- $content = [regex]::Replace($content, $pattern1, $replacement1)
- # 模式2:直接 {{ contractForm.field || '___' }}(不在span.fill中,且未被替换)
- $pattern2 = '(?<!v-if="isTextMode">)\{\{\s*contractForm\.(\w+)\s*\|\|\s*''([^'']+)''\s*\}\}'
- $matches2 = [regex]::Matches($content, $pattern2)
- Write-Host "模式2匹配数: $($matches2.Count)"
- $replacement2 = '<template v-if="isTextMode">{{ contractForm.$1 || ''$2'' }}</template><input v-else v-model="contractForm.$1" class="text-input" placeholder="请输入" style="max-width: 180px;" />'
- $content = [regex]::Replace($content, $pattern2, $replacement2)
- # 保存
- Set-Content $path $content -Encoding UTF8 -NoNewline
- Write-Host "完成!"
|