Vue - 不能在模块外使用导入语句

El *_*bre 8 vue.js

我正在尝试创建一个表单。这个表单有一个包含 vue、axios 和 sweetalert 的 package.json。

"dependencies": {
  "axios": "^0.19.0",
  "vue": "^2.6.10",
  "vue-sweetalert2": "^2.1.1"
}
Run Code Online (Sandbox Code Playgroud)

JS是

<script>
  import Vue from 'vue';
  import VueSweetalert2 from 'vue-sweetalert2';
  import VueAxios from 'vue-axios';
  import axios from 'axios';
  import 'sweetalert2/dist/sweetalert2.min.css';
  Vue.use(VueSweetalert2, VueAxios, axios);
  var app = new Vue({
    el: '#app',
    methods: {
      guardar: function () {
        axios
          .get('ENDPONT')
          .then(response => {
            console.log(response);
            Vue.swal('Hello Vue world!!!');

          })
          .catch(function (error) {
            console.log(error);
            Vue.swal('Hello Vue world!!!');
          });
      }
    }
  });
</script>
Run Code Online (Sandbox Code Playgroud)

错误很简单:返回“不能在模块外使用导入语句”。我想导入是错误的,但我是 Vue 新手,不知道什么是正确的方法。

Dom*_*nic 5

您正在尝试在普通脚本标记中使用 import 语句,您只能这样做,type="module"但我怀疑如果您继续沿着这条路径走下去,您会遇到许多其他问题,因为许多库尚未构建用于 ESM 模块。

您最好使用https://cli.vuejs.org/生成一个项目,这将创建一个良好的起始基础并编译您的代码并将其放入一个/build文件夹中以供您部署到您的网络托管。