使用Angular 6重定向到Netlify上的“自定义成功”页面

时间:2018-09-28 03:56:16

标签: angular netlify

我已经在Netlify上部署了一个6号角站点,几乎没有什么问题,并且我已经获得了使用Netlify的内置表单来处理简单提交的表单。

在成功提交表单后,我现在正尝试重定向到自定义角度组件,并且有点卡住了。我试图模拟此任务的文档,该文档在Netlify的文档中列出了对React和Vue的列出,我认为这是等效角度的。

我尝试重定向到静态html页面以及组件。像文档一样将其发布到'/'会提示结果为404。

在控制台中和提交表单后,我没有收到任何错误,因此我不确定下一步该怎么做。任何输入都是有帮助的,如果需要,我可以显示我使用的代码。

编辑:这是我用来重定向到Netlify的内置确认页面的表单。我希望能够重定向到Angular中自己的确认组件。

<form name="contact" action="/done/" netlify method="POST" netlify-honeypot="bot-field">
  <input type="hidden" name="form-name" value="contact"/>
  <p class="hidden">
    <label>Don’t fill this out if you're human: <input name="bot-field" /></label>
  </p>
  <p>
    <label>Name <input type="text" name="name" /></label>
  </p>
  <p>
    <label>Email <input type="email" name="email" required/></label>
  </p>
  <p>
    <label>Message <textarea name="message"></textarea></label>
  </p>
  <p>
    <button type="submit">Send</button>
  </p>
</form>

这是成功提交表单的屏幕快照,可以正确重定向,除了我的角度组件,Netlify仍在处理重定向页面。

enter image description here

2 个答案:

答案 0 :(得分:1)

为使重定向正常工作,您可能需要一个_redirects文件。

使用此文件,所有URL都将发送到应用程序的根目录,从而使Angular路由器正常工作。

应该在应用程序的_redirects文件夹中创建src文件。对于大多数基本站点,文件仅需要包含以下行:

/*    /index.html   200

在创建_redirects文件之后,还应该将其添加到assets文件中的angular.json部分。

 "assets": [
     "src/favicon.ico",
     "src/assets",
     "src/_redirects"
 ]

更多信息here

答案 1 :(得分:0)

来自this article

  

...创建一个新页面,例如/success/,并将action属性添加到您的<form>标签。

它应该看起来像这样:

<form name="contact" method="POST" action="/success/"  netlify>