【发布时间】:2019-09-30 23:47:05
【问题描述】:
我想写vue demo用于教育教学目的,为了只关注vue部分,我不想介绍npm,webpack或browserify之类的bundler。
所以我使用babel-standalone 编写代码。我也想用vue-class-component。但是现在我无法使用vue和vue-class-component的esm构建,总之我想支持在我的main.js中编写这样的代码
import Vue from '../vender/vue.esm.browser';
import Component from '../vender/vue-class-component.esm';
@Component
class App extends Vue {
//......
}
如果我像上面那样写代码,我得到Uncaught ReferenceError: require is not defined 错误。
现在我可以使用以下样式使其工作,但使用 vue-class-component 的 Component 很难看。
<!-- the html contain these scripts -->
<script src="https://unpkg.com/vue@2.6.10/dist/vue.js"></script>
<script src="https://unpkg.com/vue-class-component@7.1.0/dist/vue-class-component.js"></script>
<script src="vender/babel.min.js"></script>
<!-- fix regenerator not defined -->
<script src="vender/regenerator-runtime.js"></script>
<script src="js/main.js"
data-plugins="transform-runtime,transform-class-properties,transform-decorators-legacy,transform-regenerator"
data-presets="es2015,stage-1" type="text/babel">
</script>
// js/main.js
const Component = VueClassComponent.default;
@Component
class App extends Vue {
//......
}
更多详情请访问https://github.com/liudonghua123/todos/tree/master/todos-vue-class-component
【问题讨论】:
标签: vue.js requirejs babeljs vue-class-components