首页 > 解决方案 > Vue&TypeScript:vue-property-decorator/vue-class-component 的“el”属性?

问题描述

让这个问题简洁明了。以下代码的哪个等效项将用于 TypeScript & Vue &&vue-property-decorator组合?

var app = new Vue({
  el: '#app',
  data: {
    message: 'Hello Vue!'
  }
})

标签: typescriptvue.jsvue-component

解决方案


vue-property-decorator旨在使用 TypeScript 中的类样式语法来增强 Vue 组件。有问题的代码不符合标准,因为它不是一个组件。假设您要转换此单文件组件中的脚本:

应用程序.vue

<script>
export default {
  data() {
    return {
      message: 'Hello Vue!'
    }
  }
}
</script>

转换vue-property-decorator如下所示:

<script lang="ts">
import { Component, Vue } from 'vue-property-decorator';

@Component
export default class App extends Vue {
  message = 'Hello Vue!'
}
</script>

安装根目录保持不变(vue-property-decorator不会使用):

<!-- index.html -->
<body>
  <div id="app"></div>

  <script>
    new Vue({
      el: '#app'
    });
  </script>
</body>

vue-cli我建议使用(在提示中选择 TypeScript 预设和“类样式语法” )生成一个 TypeScript 项目。


推荐阅读