-
Notifications
You must be signed in to change notification settings - Fork 917
Description
vue-loader 15.7.2
webpack 4.41.2
babel-loader 8.0.6
.vue文件中,通过<script lang="tsx">编写tsx代码, 编译报错。但直接用.tsx文件,编译正常。
所以我认为可能是vue-loader的问题。
ERROR in E:\sensenetsWeb\sensenets-ui\packages\tab\src\tab.vue.ts
./packages/tab/src/tab.vue?vue&type=script&lang=tsx& (./node_modules/babel-loader/lib!./node_modules/ts-loader??ref--2-1!./node_modules/vue-loader/lib??vue-loader-options!./node_modules/vue-tslint-loader??ref--0-0!./packages/tab/src/tab.vue?vue&type=script&lang=tsx&)
[tsl] ERROR in E:\sensenetsWeb\sensenets-ui\packages\tab\src\tab.vue.ts(12,29)
TS1161: Unterminated regular expression literal.
@ ./packages/tab/src/tab.vue?vue&type=script&lang=tsx& 1:0-280 1:296-299 1:301-578 1:301-578
@ ./packages/tab/src/tab.vue
@ ./packages/tab/index.ts
@ ./src/index.ts
@ ./examples/main.ts
{ test: /\.vue$/, use: [ { loader: 'vue-loader', options: { transformAssetUrls: { video: ['src', 'poster'], source: 'src', img: 'src', image: ['xlink:href', 'href'], use: ['xlink:href', 'href'] }, compilerOptions: { // 放弃模板标签之间的空格 preserveWhitespace: false } } } ] }, { test: /\.tsx?$/, exclude: /node_modules/, use: [ 'babel-loader', { loader: 'ts-loader', options: { appendTsSuffixTo: [/\.vue$/], configFile: require.resolve('../tsconfig.dev.json'), transpileOnly: true, } } ] },
`<script lang="tsx">
import {Vue, Component} from "vue-property-decorator";
@Component({
name: 'SnTab'
})
export default class SnTab extends Vue {
private render(h: any) {
return (
<div>
<span>1111</span>
<span>1111</span>
</div>
)
}
private created() {
}
private mounted() {
}
}
`</script>