如何在将代码保留在 .js 中的同时将 vue.js 模板分离到一个 .vue 文件中?

Edz*_*dza 3 javascript webpack vue.js visual-studio-code vue-loader

我想将 vue.js 模板分成 .vue 文件,同时将代码保留在 .js 文件中。

这是一个 vue 的“单文件组件”:

<template>
..
</template>

<script>
..
</script>
Run Code Online (Sandbox Code Playgroud)

什么工作

使 .vue 文件成为真正的组件,并定义一个指向 .js 文件的 MIXIN。看起来很hacky!

我想要什么:

单个 webpack 导入到 .js 文件:

...
</template>

import ViewModel from 'vm.js'
Run Code Online (Sandbox Code Playgroud)

这可能吗?还是 .vue 文件中 vue-loader 理解的标签?

<template>
..
<script src='vm.js'/>
</template>
Run Code Online (Sandbox Code Playgroud)

万分感谢!目标是在 Visual Studio 代码中设置断点 + 关注点分离 + 可读性。:)

哦,这需要与打字稿一起使用!

Naf*_*lam 6

...
</template>

import ViewModel from 'vm.js'
Run Code Online (Sandbox Code Playgroud)

第二个选项可以通过在其中进行小幅调整

<template>
...
</template>

<script src="vm.js"></script>
Run Code Online (Sandbox Code Playgroud)

  • 支持打字稿。不过,我还没有为我的项目尝试过。你可以查看 https://vuejs.org/v2/guide/typescript.html (3认同)
  • 看起来我们可能需要添加:&lt;script lang="ts"&gt;。来源:https://github.com/Microsoft/TypeScript-Vue-Starter (2认同)