reactjs - 自定义 AmplifySignOut 的布局

标签 reactjs aws-amplify

我目前正在开发集成 AWS Amplify 的 React 应用程序。到目前为止,这是一个很棒的工具,但我发现很难自定义组件。特别是我想设置 AmplifySignOut 组件的样式。
根据documentation (请参阅页面上的最后一段)将主题传递给 withAuthenticator-component 不再像这样工作了。
我不知道如何将主题传递给 AmplifySignOut 组件,该组件会覆盖所创建按钮的默认布局。到目前为止,我认为this是默认布局,但我不是 100% 确定。
如果有人能在这里指出我正确的方向,那就太好了:)
我使用这样的组件(不工作):

import React from 'react'
import { NavLink } from "react-router-dom";
import './Navbar.css'
import { AmplifySignOut } from '@aws-amplify/ui-react';


function Navbar(props) {
  const MyTheme = {
    NavButton: { 'fontWeight': '10' },
  }

  return (
    <div className="navbar">
      <NavLink exact to="/">Home</NavLink>
      <NavLink to="/pdservice">Drucker & Netzwerk</NavLink>
      <AmplifySignOut theme={MyTheme}/>
    </div>
  )
}

export default Navbar;
此致

最佳答案

就我而言,我刚刚编写了一个完全自定义的按钮,它调用了放大函数。你可以完全按照你的意愿设计这个。也许这段代码有帮助?

import React from 'react'
import {Auth} from "aws-amplify";


function CustomSignoutButton() {
  const signOut = (e) => {
      e.preventDefault();
      Auth.signOut();
      window.location.reload() <!-- it also works without, but just to really kick the user out.-->
    }
  return (
    <button onClick={signOut}>
      Sign out
    </button>
  )
}

export default CustomSignoutButton;

关于reactjs - 自定义 AmplifySignOut 的布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62916906/

相关文章:

javascript - 如何在 Enzyme/Jest Test 中切换和检查 Material UI 复选框

amazon-web-services - AWS Amplify - AppSync 和多个 DynamoDB 表

react-native - 如何使用 AND/OR 运算符过滤列表/查询 AWS Amplify JavaScript GraphQL

javascript - Electron Amplify AppSync "Realtime disabled when in a server-side environment"

json - React Native - 第二个 API 调用没有返回值

javascript - 输入模式 ='[a-zA-Z]' 在 React 应用程序中不起作用

aws-cloudformation - 注册时的唯一用户名和唯一电子邮件放大了 Cognito React

amazon-web-services - 引用 AppSync 和 Cognito Auth 的现有设置

javascript - 在react.js中渲染时如何移除树的根

javascript - 在 React 组件中使用 ajax 获取实时更新的数据