我正在尝试使用Vue项目的googleapi在Google电子表格中获取一些行,并且我已经在Google控制台中创建了一个项目和正确的服务帐户凭据。
问题是单击按钮TypeError: The "original" argument must be of type Function
时出现此错误,但我使用的是以下简单代码:
<template>
<div id="app" class="container">
<button class="button" @click="getData">Get data</button>
</div>
</template>
<script>
export default {
name: 'app',
methods: {
getData: async function() {
const { google } = require('googleapis');
const range = 'Data!A2:C999';
}
}
}
</script>
我不知道是什么原因导致了此错误,看来const { google } = require('googleapis');
中出了点问题,但我无法弄清楚。
答案 0 :(得分:0)
const { google } = require('googleapis');
是不正确的语法。
您应该添加:
import { google } from 'googleapis';
在开始script
标签下面
答案 1 :(得分:0)
我遇到了同样的问题,并且在应用了变通方法here之后,问题得以解决。
在浏览器上运行readFile()似乎有问题。
您需要做的就是像这样编辑webpack.config.js文件
module.exports = {
resolve: {
extensions: ['.js'],
alias: {
fs: path.resolve(__dirname, 'src/mock-fs.js')
}
}
};
如果使用的是Vue CLI 3,则需要在根级别创建一个vue.config.js文件,因为在创建项目时没有创建webpack.config.js文件(它是在运行时创建的) )并像这样(more info)
对其进行修改module.exports = {
configureWebpack: {
resolve: {
extensions: ['.js'],
alias: {
fs: path.resolve(__dirname, 'src/mock-fs.js')
}
}
}
}
mock-fs.js在哪里
module.exports = {
readFile () {}
}