我有一个完全是客户端的网站。当它在测试环境中时,我使用 localhost 作为其他服务的所有链接:数据库、报告生成器等。
当网站部署到apache2时,为了上线,我必须手动将这些链接更改为服务器的IP地址。
代码中有什么方法可以避免这样做吗?或者,是在部署阶段自动更改它们(例如 grunt)的唯一方法吗?
最佳答案
您可以检查 window.location 对象并在主机名周围放置一些条件逻辑,例如if (window.location.hostname == 'localhost') {}
。
尽管混合特定于环境/测试时的代码通常是一种味道。您对这是构建/部署时事件的预感可能是正确的方法。 gulp-inject插件值得考虑。
关于Javascript:有没有办法在上线时自动将 localhost 更改为 IP 地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39244420/