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

标签 angular netlify

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

我现在正尝试在成功提交表单后重定向到自定义 Angular 组件,但有点卡住了。我试图模拟此任务的文档,该文档在 Netlify 的文档中列出用于 react 和 vue,我认为这是 Angular 等效的。

我试过重定向到静态 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>

这是一个成功提交表单的屏幕截图,它正确地重定向除了我的 Angular 组件之外,Netlify 仍在处理重定向页面。

enter image description here

最佳答案

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

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

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

/*    /index.html   200

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

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

可以找到更多信息here .

关于angular - 使用 Angular 6 重定向到 Netlify 上的自定义成功页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52548061/

相关文章:

angular - 从 Angular 中的 .subscribe 获取订阅数据

angular - Ionic 3 angular 5 - 无法解析 "page"的所有参数

Angular 2 : have component auto detect variable change in a service

svelte - 如何在 sveltekit netlify 中使用文件 api

javascript - 在 Netlify 函数中设置环境变量的正确方法是什么?

html - Bootstrap 响应设置不起作用

javascript - 传递类引用的 Angular 范围问题中的 Highcharts

javascript - netlify dev 开始无限循环

jekyll - 如何将旧的Netlify + Jekyll站点地址重定向到新地址?

web - 如何在 Netlify 中托管单个 HTML 页面?