对Nuxt.JS满意,“预期参数accessToken”

问题描述 投票:3回答:2

我制作了一个从Contentful提取数据的页面。数据正在正确提取,但是使用方法中的功能的按钮不起作用。变量的实时更新(例如,使用v-model)也不起作用。

我在控制台中看到此错误:

screenshot

我认为这个错误是问题所在。有人知道怎么了吗?我不知道如何解决它:(

我的contentful.js:

const contentful = require('contentful')

const client = contentful.createClient({
  space: process.env.CONTENTFUL_ENV_SPACE_ID,
  accessToken: process.env.CONTENTFUL_ENV_ACCESS_TOKEN
})

module.exports = client

提取数据的代码:

export default {
  layout: "landing_page",
  asyncData() {
    return client
      .getEntries({
        content_type: "landingPage"
      })
      .then(entries => {
        return { contentfulData: entries.items[0].fields };
      });
  },
  computed: {
    styles() {
      return landingPageCss;
    }
  },
  components: {
    priceBox,
    contact,
    home,
    aboutUs,
    footerDiv
  }
};
javascript vue.js axios nuxt.js contentful
2个回答
0
投票

最好的方法是使用dotenv软件包。在.env文件中设置环境密钥。

nuxt.config.js文件应包含:

const env = require('dotenv').config()

export default {
  mode: 'universal',
  ...
  env: env.parsed,
  ...
}

观看此视频:https://codecourse.com/watch/using-env-files-with-nuxt


0
投票

如果使用dotenv,则需要执行以下步骤:

npm install --save-dev @nuxtjs/dotenv

然后您将其安装为模块。注意这里,如果您使用的是Nuxt.js v2.9之前的版本,那么您必须转到nuxt.config.js并将代码放入module部分:

...
   module: [
   '@nuxtjs/dotenv'
 ]
...

如果没有module部分,则创建一个。

[如果您使用的是更新版本,然后是v2.9,则将其放入buildModules

  ...
   buildModules: [
   '@nuxtjs/dotenv'
 ]
...

您现在可以通过.envcontext.env访问保存在process.env文件中的变量

© www.soinside.com 2019 - 2024. All rights reserved.