1
我嘗試使用單個文件組件與只運行時構建。當我使用完整的vue構建萬物時,可以按預期工作。我認爲單個文件組件是預編譯的。爲什麼當我使用僅限運行時版本時不會呈現組件。Vue 2單個文件組件不適用於僅運行時版本
這裏是我的設置:
webpack.config.js:
const webpack = require('webpack');
const webpackConfig = {
entry: "./src/main.ts",
output: { filename: "dist/bundle.js" },
resolve: {
alias: {
vue: 'vue/dist/vue.runtime.esm.js'
//vue: 'vue/dist/vue.esm.js',
}
},
module: {
rules: [{
test: /\.ts$/,
exclude: /node_modules|vue\/src/,
loader: 'ts-loader',
options: {
appendTsSuffixTo: [/\.vue$/]
}
},
{
test: /\.vue$/,
loader: 'vue-loader',
options: {
esModule: true
}
}
]
}
}
module.exports = webpackConfig;
main.ts
import Vue from "vue";
import MyFirstComponent from "./MyFirstComponent.vue";
import MySecondComponent from "./MySecondComponent.vue"
Vue.component("my-first-component", MyFirstComponent);
Vue.component("my-second-component", MySecondComponent);
new Vue({
el: "#app"
});
MyFirstComponent.vue
<template>
<div>
This is the first component!
</div>
</template>
<script lang="ts">
import Vue from 'vue';
import Component from 'vue-class-component';
@Component
export default class MyFirstComponent extends Vue {
public mounted() {
console.log("mounted!");
}
}
</script>
的 「MySecondComponent」與第一個相似。
任何人都可以解釋爲什麼這不與運行時只生成?
非常感謝!