VueJS 2.5和TypeScript增强功能

时间:2017-10-14 21:12:56

标签: typescript vue.js

VueJS 2.5已经发布了,我正在等待TypeScript enhancements,但在升级所需的依赖项之后,我真的看不到任何增强功能。

根据我的阅读,这应该显示一个类型错误,因为msg是一个数字

<template>
  <div>
    <h1>{{ msg }}</h1>
  </div>
</template>

<script lang="ts">
  export default {
    data: function () {
      return {
        msg: 1
      }
    },
    methods: {
      test: function (): number {
        return this.msg.indexOf('App')
      }
    }
  }
</script>

但它实际上没有错误,就像以前的版本一样。任何线索?新的TypeScript功能在哪里?

3 个答案:

答案 0 :(得分:1)

拥有tsconfig.json并设置&#34; strict&#34;这一点非常重要。为真。见https://vuejs.org/v2/guide/typescript.html#Recommended-Configuration

答案 1 :(得分:0)

export default Vue.extend({
    // data
    // methods
})

Vue组件中this的类型推断只能在使用时发生  规范的Vue API。

答案 2 :(得分:0)

noImplicitThis必须设置为true中的tsconfig.jsonallowSyntheticDefaultImports选项也可以删除。