【问题标题】:How to configure runtime compilation in Vue and Snowpack如何在 Vue 和 Snowpack 中配置运行时编译
【发布时间】:2021-02-24 11:40:02
【问题描述】:

我正在尝试通过运行时编译来设置 Vue 项目,但我不太确定如何在 Snowpack 中进行配置。

目前,当我运行项目时,我得到一个空白屏幕和通常的 "[Vue 警告]:组件提供的模板选项,但此 Vue 版本不支持运行时编译。将您的捆绑器配置为别名“vue” " 到 "vue/dist/vue.esm-bundler.js".

目前我的文件如下所示:

snowpack.config.js:

/** @type {import("snowpack").SnowpackUserConfig } */
module.exports = {
  mount: {
    public: '/',
    src: '/_dist_',
  },
  plugins: [
    '@snowpack/plugin-vue',
    '@snowpack/plugin-dotenv'
  ],
  ...
}

index.js:

import { createApp } from "vue";
// import App from "./App.vue";
import First from "./First.vue";

// const app = createApp(App);
const app = createApp({
  data() {
    return {
      message: 'duck',
    }
  }
});
app.component('first', First);
app.component('ducks', {
  props: ['todo'],
  template: '<li>{{ todo }}</li>'
});
app.mount("#app");


// Hot Module Replacement (HMR) - Remove this snippet to remove HMR.
// Learn more: https://www.snowpack.dev/#hot-module-replacement
if (import.meta.hot) {
  import.meta.hot.accept();
  import.meta.hot.dispose(() => {
    app.unmount();
  });
}

index.html:

...
  <body>
    <div id="app">
      <p>stuff should be fine:</p>
    
      <p>{{message}}</p>
      <ul>
        <li>hello</li>
        <ducks todo="testing"></ducks>
        <ducks todo="goats"></ducks>
        <ducks todo="canoes"></ducks>
      </ul>
    </div>
    <noscript>You need to enable JavaScript to run this app.</noscript>
    <script type="module" src="/_dist_/index.js"></script>
  </body>
...

我尝试添加别名,但似乎没有任何作用:

snowpack.config.js

module.exports = {
  ...
  plugins: [
    '@snowpack/plugin-vue',
    '@snowpack/plugin-dotenv'
  ]
  ...
  alias: {
    'vue': 'vue/dist/vue.esm-bundler.js'
  }

有人知道我如何获得运行时编译设置吗?

谢谢, 马特

【问题讨论】:

    标签: javascript vue.js vuejs3 snowpack


    【解决方案1】:

    我通过使用import { createApp, h } from "vue/dist/vue.cjs.prod.js"; 设法解决了这个问题。

    但我不确定这是否会在未来产生其他问题。

    【讨论】:

    • 这条评论让我很开心!我正在尝试对某些东西进行原型设计,而摆弄 webpack 不在我的计划中。
    猜你喜欢
    • 2019-09-18
    • 2013-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多