Skip to content

Commit fb51878

Browse files
committed
fix: fix script parse error
1 parent 3a957d2 commit fb51878

File tree

3 files changed

+12
-6
lines changed

3 files changed

+12
-6
lines changed

packages/core/runtime/handle-variable.ts

+7-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,13 @@ export function handleVBindVariable(
1010
ctx: IVueCSSVarsCtx,
1111
) {
1212
const { descriptor } = parse(code)
13-
const lang = descriptor?.script?.lang ?? 'js'
13+
let lang = 'js'
14+
if (descriptor?.scriptSetup?.lang)
15+
lang = descriptor.scriptSetup.lang
16+
17+
if (descriptor?.script?.lang)
18+
lang = descriptor.script.lang
19+
1420
// ⭐TODO: 只支持 .vue ? jsx, tsx, js, ts ?
1521
if (!JSX_TSX_REG.test(`.${lang}`)) {
1622
ctx.isScriptSetup = !!descriptor.scriptSetup

play/vite/src/assets/css/foo.css

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#foo{
22
color: v-bind-m(sassColor);
3-
background: #ffebf8;
3+
background: v-bind-m(sc2);
44
width: 200px;
55
height: 30px;
66
}

play/vite/src/views/app/App.vue

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<script setup lang="ts">
1+
<script setup lang="tsx">
22
import { reactive, ref } from 'vue'
33
import Comp from '../../comp.vue'
44
import Comp2 from '../../comp2.vue'
@@ -14,10 +14,10 @@ const appTheme4 = reactive({ color: 'red' })
1414
const appTheme5 = { color: 'red' }
1515
const appTheme6 = () => 'red'
1616
</script>
17-
<!--
18-
<script lang="ts">
17+
18+
<script lang="tsx">
1919
const sc2 = 'red'
20-
</script> -->
20+
</script>
2121
<!-- <script lang="ts">
2222
import { defineComponent, reactive, ref } from 'vue'
2323
/* import Comp from './comp.vue' */

0 commit comments

Comments
 (0)