我正在使用Axios的Electron Vue应用程序对我的Laravel服务器进行HTTP调用.在DevElectron 模式下,一切都很完美.但当我把我的Electron 应用程序安装到客户机上,所有的混乱都爆发了.我解决了一些问题,但这一个问题会杀了我.

简单地说,即使所有Axio成功返回,它们也会抛出一个我输入的错误.catch().说实话,我很困惑这怎么可能.例如,当我的程序加载时,它会进行一些调用以获取所需的信息.抛出错误并显示alert .我想那只是我的Laravel服务器.但数据被成功抓取并添加到应用程序中.

axios.post(`${this.$store.state.URL}/get_server_ticket_from_table?api=${this.$store.state.API}`, {
    id: this.ServerTicketMove.Server1.id,
    table: this.ServerTicketMove.currentTable
})
.then((response) => {
    console.log(response)

    if (typeof response.data.id != 'undefined') {
        this.ServerTicketMove.ticket = response.data

    }

})
.catch(() => {
    alert('Did not get Servers Table Information. Cant Connect to Main Server.')
}) 

我在谷歌上搜索了一下,看到了一些关于CORS的帖子.所以我在我的Web服务器和Laravel上实现了这一点.这造成了更大的混乱.同样的错误,但这一次没有数据应用于任何东西.所以.然后()甚至没有被调用.除此之外,在启用CORS的情况下,我的Axios似乎正在使用选项的请求方法进行额外的HTTP调用.为什么?我认为CORS不能解决我的问题.

也在我的Electron Vue背景中.我重新开启了网络安全.因为开发的原因,它被关闭了.这并没有改变任何事情.

win = new BrowserWindow({
    width: 275,
    height: 640,
    title: 'title',
    // webPreferences: { webSecurity: false }
})

有人知道发生了什么吗?

EDIT - 1-14-2019

在发现错误"regeneratorRuntime未定义"后,我认为这是一个巴别塔问题.我已经跟踪了https://babeljs.io/docs/en/babel-polyfill/条,但我仍然得到了"再生时间未定义".Babel+Axios+Electron+Await/Sync是否可以无误地协同工作?我个人不想忽视"regeneratorRuntime未定义",如果可能的话,为这个问题找到一个可靠的解决方案.如果您有任何意见或需要我研究的东西,我将不胜感激!

推荐答案

在谷歌搜索了很多次之后,我发现我的软件包中缺少了依赖项.json.尽管它们是node_modules文件夹中所必需的,但它们在我的程序中并没有作为依赖项列出.

正在制作Electron+Vue+Axios+Sync/Await的制作版本

npm install --save @babel/runtime 
npm install --save-dev @babel/plugin-transform-runtime

而且,在.babelrc,添加:

{
    "presets": ["@babel/preset-env"],
    "plugins": [
        ["@babel/transform-runtime"]
    ]
}

here的答案中得到了这个密码

Vue.js相关问答推荐

为什么v-show需要组件的包装元素?

在Vue 2中,是否可能在不创建组件的情况下注入代码块?

vue js如何将布尔值传到数据库

在 Ajax 函数中访问 Vue.js 组件属性

两个div元素之间的vue2过渡

Webpack 编译错误:TypeError: __WEBPACK_IMPORTED_MODULE_1__ … is not a function

Axios Intercept 在第一次调用时未从 localStorage 应用令牌

如何在异步功能上使用 debounce?

更新 v-for 中使用的数组内的对象时,Vue js react性问题

请求正在进行时显示加载器

此 set-cookie 已被阻止,因为它具有 samesite=lax

Vue:如何在按钮单击时调用 .focus()

如何突出显示 Vuetify 菜单中的选定项目?

Import Unexpected identifier + SyntaxError: Unexpected string

Vuejs css 范围性能

Vue.js 单向绑定表单

在子元素 vueJS.2 之间切换active类

Vue.js 3 - 替换/更新react性对象而不会失go react性

NPM:403 禁止 - PUT http://registry.npmjs.org/[package-name] - 禁止

在 Vuejs 中全局导入 Axios 方法