javascript - 使用 React 进行电子邮件签名

标签 javascript reactjs email

我是 React 和 Javascript 新手,我遇到了挑战。

看起来像这样:

电子邮件签名生成器

在特定公司中拥有一致的电子邮件签名非常重要。

应用程序应编写为客户端应用程序,为员工生成签名。

它应该看起来像这样:

简·多伊//(名字)

前端开发人员//(职位名称)

jdoe@company.com//(电子邮件地址)

公司//(公司信息)

12345城市

每个员工都有不同的姓名、电子邮件,当然还有职位。

电子邮件地址始终以名字的第一个字母开头,然后是姓氏和@company.com

非常感谢任何帮助。

最佳答案

好吧,首先您需要一些数据。

我将有一个包含公司信息和员工数据数组的对象:

const company = {
  companyName: 'Bozos Inc',
  zipCode: 90210,
  address: '1234 Turkey Road.'
}

const employees = [
  { firstName: 'Bob', lastName: 'Smith', jobTitle: 'Engineer' },
  { firstName: 'Karen', lastName: 'Jones', jobTitle: 'Manager' }
];

然后,您需要一个组件,根据一组员工数据和一些公司信息,为每个员工创建签名卡。

function Signature({ employee, company }) {
  return (
    <div className="card">
      <div className="employee">
        <div className="name">{employee.firstName} {employee.lastName}</div>
        <div>{employee.jobTitle}</div>
      </div>
      <div className="company">
        <div>{company.name}</div>
        <div>{company.address}</div>
        <div>{company.zipCode}</div>
      </div>      
    </div>
  )
}

也许还有一种方法可以迭代返回每个签名卡的员工信息:

function Signatures({ employees, company }) {
  return employees.map((employee, key) => {
    return <Signature key={key} employee={employee} company={company} />
  });
}

把它们放在一起可能会得到这样的结果:

function Signature({ employee, company }) {
  return (
    <div className="card">
      <div className="employee">
        <div className="name">{employee.firstName} {employee.lastName}</div>
        <div>{employee.jobTitle}</div>
      </div>
      <div className="company">
        <div>{company.name}</div>
        <div>{company.address}</div>
        <div>{company.zipCode}</div>
      </div>      
    </div>
  )
}

function Signatures({ employees, company }) {
  return employees.map((employee, key) => {
    return <Signature key={key} employee={employee} company={company} />
  });
}

const company = {
  companyName: 'Bozos Inc',
  zipCode: 90210,
  address: '1234 Turkey Road.'
}

const employees = [
  { firstName: 'Bob', lastName: 'Smith', jobTitle: 'Engineer' },
  { firstName: 'Karen', lastName: 'Jones', jobTitle: 'Manager' }
];

ReactDOM.render(
  <Signatures company={company} employees={employees} />,
  document.getElementById('container')
);
.card {
  margin-top: 0.5em;
  border: 1px solid #333333;
  padding: 0.2em;
}

.name {
  font-weight: bold;
}

.company {
  margin-top: 0.5em;
  color: #000088;
}
<script src="https://unpkg.com/react@16/umd/react.development.js"></script>
<script src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script>
<div id="container"></div>

关于javascript - 使用 React 进行电子邮件签名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48643824/

相关文章:

javascript - 如何通过 "escape"JavaScript class 关键字来指定一个 CSS class 值

javascript - React 上下文状态属性未定义

javascript - ReactJS ES6 函数绑定(bind) - 未捕获的类型错误 : Cannot read property 'update' of undefined

email - 如何在 mutt 中移动多条消息

javascript - React - 将对象转换为具有属性的对象数组

javascript - AngularJS 未更新,指令中的指令

javascript - 如何在firebase中迭代对象的对象?

ruby-on-rails - Rails如何使用mail_form?

node.js - Amazon SES SendRawEmail (Node.JS) 中的电子邮件未显示 To :, Cc 和 Bcc

javascript - Ember : In my example why does the logic in the router continue even though the function used in it has not completed?