首页 > 解决方案 > 从 Elm 获取页面的主机名

问题描述

我正在向 PHP 编写的现有页面注入 Elm 功能。

从服务器响应的项目​​数据有url : "this-is-detail-link.html",我需要获取主机名以与 url 连接。例如:

case Msg of
    GoToDetailPage item ->
      let
        hostname = getHostNameFromElm // <- how can I get this?

        // expected: http://example.com/this-is-detail-link.html
        fullUrl = 
          Url.Builder.crossOrigin hostname item.url []

        cmd = 
          Browser.Navigation.load fullUrl


      in
      (model, cmd)

我在用Browser.element

main =
    Browser.element
        { init = init
        , view = view
        , update = update
        , subscriptions = subscriptions
        }

尝试搜索但不是我所期望的。它需要使用 Browser.application,而不是这样的部分。有什么建议吗?提前致谢!

标签: urlelm

解决方案


我已经看到您已经解决了它,但请记住,您始终可以通过ports使用 Javascript 。

这是一个使用端口获取来源的示例应用程序,请不要因为 Ellie 在 iF​​rame 中呈现,我无法直接获取主机名。您只需要更改为window.location.hostname.

https://ellie-app.com/8ggN625V8T6a1


推荐阅读