提交 93723eaf 编写于 作者: fxy060608's avatar fxy060608

wip(uts): compiler

上级 ea46ae7f
...@@ -107,3 +107,7 @@ export function pathToGlob( ...@@ -107,3 +107,7 @@ export function pathToGlob(
) )
return path.posix.join(safeStr, glob) return path.posix.join(safeStr, glob)
} }
export function resolveSourceMapPath(dir: string, platform: UniApp.PLATFORM) {
return path.resolve(dir, '../.sourcemap/' + platform)
}
...@@ -24,8 +24,6 @@ import { ...@@ -24,8 +24,6 @@ import {
import { compile, parsePackage } from '../utils/compiler' import { compile, parsePackage } from '../utils/compiler'
export function uniUtsV1Plugin(): Plugin { export function uniUtsV1Plugin(): Plugin {
// 目前仅支持 app-android
process.env.UNI_APP_PLATFORM = 'app-android'
let isFirst = true let isFirst = true
return { return {
name: 'uni:uts-v1', name: 'uni:uts-v1',
......
...@@ -8,6 +8,7 @@ import { ...@@ -8,6 +8,7 @@ import {
installHBuilderXPlugin, installHBuilderXPlugin,
isInHBuilderX, isInHBuilderX,
normalizePath, normalizePath,
resolveSourceMapPath,
} from '@dcloudio/uni-cli-shared' } from '@dcloudio/uni-cli-shared'
import { camelize } from '@vue/shared' import { camelize } from '@vue/shared'
...@@ -36,7 +37,10 @@ export async function compile(filename: string) { ...@@ -36,7 +37,10 @@ export async function compile(filename: string) {
output: { output: {
outDir: outputDir, outDir: outputDir,
package: parsePackage(filename), package: parsePackage(filename),
sourceMap: process.env.NODE_ENV === 'development', sourceMap: resolveSourceMapPath(
process.env.UNI_OUTPUT_DIR,
process.env.UNI_PLATFORM
),
extname: 'kt', extname: 'kt',
imports: [ imports: [
'kotlinx.coroutines.async', 'kotlinx.coroutines.async',
......
...@@ -86,9 +86,18 @@ export function initEnv( ...@@ -86,9 +86,18 @@ export function initEnv(
? path.resolve(process.env.UNI_HBUILDERX_PLUGINS!, 'uniapp-cli-vite') ? path.resolve(process.env.UNI_HBUILDERX_PLUGINS!, 'uniapp-cli-vite')
: process.cwd() : process.cwd()
// TODO 待优化
if (options.platform === 'app-android' || options.platform === 'app-ios') {
process.env.UNI_APP_PLATFORM = options.platform
options.platform = 'app'
}
if (options.platform === 'app-plus') { if (options.platform === 'app-plus') {
options.platform = 'app' options.platform = 'app'
} }
if (options.platform === 'app' && !process.env.UNI_APP_PLATFORM) {
// 目前仅支持 app-android,先强制使用 app-android
process.env.UNI_APP_PLATFORM = 'app-android'
}
if ( if (
options.platform === 'quickapp-webview-huawei' || options.platform === 'quickapp-webview-huawei' ||
options.platform === 'quickapp-webview-union' options.platform === 'quickapp-webview-union'
......
...@@ -11,6 +11,7 @@ import { ...@@ -11,6 +11,7 @@ import {
CopyOptions, CopyOptions,
initModuleAlias, initModuleAlias,
initPreContext, initPreContext,
resolveSourceMapPath,
} from '@dcloudio/uni-cli-shared' } from '@dcloudio/uni-cli-shared'
import { createConfig } from './config' import { createConfig } from './config'
...@@ -169,9 +170,9 @@ export default function uniPlugin( ...@@ -169,9 +170,9 @@ export default function uniPlugin(
enforce: 'post', enforce: 'post',
cwd: process.env.UNI_OUTPUT_DIR, cwd: process.env.UNI_OUTPUT_DIR,
pattern: '**/*.js.map', pattern: '**/*.js.map',
dest: path.resolve( dest: resolveSourceMapPath(
process.env.UNI_OUTPUT_DIR, process.env.UNI_OUTPUT_DIR,
'../.sourcemap/' + process.env.UNI_PLATFORM process.env.UNI_PLATFORM
), ),
}) })
) )
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册