diff --git a/packages/hap-server/src/index.js b/packages/hap-server/src/index.js
index 00b8e2f3..adeb9b0d 100644
--- a/packages/hap-server/src/index.js
+++ b/packages/hap-server/src/index.js
@@ -9,6 +9,8 @@ import { launch, stop } from './server'
import { remotePreview } from './preview/remote-preview'
import { beforeStart, createPreview } from './preview'
+let globalCWD = ''
+
/**
* 启动开发服务
*
@@ -36,6 +38,7 @@ import { beforeStart, createPreview } from './preview'
function launchServer(options) {
try {
colorconsole.attach(options.log)
+ globalCWD = options.cwd
Object.assign(config.options, options)
// 配置参数
setCustomConfig(options.cwd, options.port)
@@ -47,6 +50,10 @@ function launchServer(options) {
return launch(config)
}
+export function getCWD() {
+ return globalCWD
+}
+
/**
* 关闭开发服务
*
diff --git a/packages/hap-server/src/preview/create-router.js b/packages/hap-server/src/preview/create-router.js
index a0b8c7d1..dcf1e31d 100644
--- a/packages/hap-server/src/preview/create-router.js
+++ b/packages/hap-server/src/preview/create-router.js
@@ -15,6 +15,8 @@ import { KnownError, getLaunchPage, logger, eventBus } from '@hap-toolkit/shared
import { renderPage, trimSlash, removeAnsiColor } from './shared'
+import { getCWD } from './../index'
+
const { PACKAGER_BUILD_DONE, PACKAGER_WATCH_START, PACKAGER_BUILD_PROGRESS } = eventBus
// 不存在也返回200文件
@@ -215,6 +217,11 @@ export default async function createRouter(previewTarget) {
const widgets = manifest.router.widgets || {}
const type = requestRoute in widgets ? 'card' : 'app'
const script = routes[requestRoute]
+ const currentLanguage = JSON.parse(process.env.VSCODE_NLS_CONFIG || `{locale: 'zh-CN'}`).locale;
+ const cwd = getCWD()
+
+ const modifiedPath = cwd.replace(':', ':\\')
+ const finalPath = modifiedPath.replace(/\\/g, '\\\\');
const html = await renderPage(TPL_PAGE_PATH, {
title: manifest.name,
routeName: requestRoute,
@@ -222,7 +229,9 @@ export default async function createRouter(previewTarget) {
type,
script,
scriptNotFound: !scriptExists(script),
- webJsUrl: genWebJsUrl(ctx.conf.options.webVersion)
+ webJsUrl: genWebJsUrl(ctx.conf.options.webVersion),
+ language: currentLanguage,
+ i18nPath: finalPath
})
ctx.type = 'text/html'
ctx.body = html
diff --git a/packages/hap-server/src/preview/views/page.html b/packages/hap-server/src/preview/views/page.html
index 18867e23..a7bad2c5 100644
--- a/packages/hap-server/src/preview/views/page.html
+++ b/packages/hap-server/src/preview/views/page.html
@@ -85,6 +85,10 @@
z-index: 1002;
}
+