javascript - 无法在 'open' : Unable to open a window with invalid URL 'Window' 上执行 '%3127.0.0.1:3000'

标签 javascript angularjs coffeescript

我正在创建一个“在新选项卡中打开链接”。我正在使用 window.open() 打开新选项卡。

我的代码:

$scope.doOpenLink = ()->
    domain = '127.0.0.1'
    port = '3000'

    window.open("#{domain}:#{port}");

但我收到此错误:

Error: Failed to execute 'open' on 'Window': Unable to open a window with invalid URL '%3127.0.0.1:3000'.

at MyServerScopeController.vm.doOpenLink (base-adb5b1181b.js:4294)
at fn (eval at compile (angular-29115c1a5c.js:15156), <anonymous>:4:286)
at callback (angular-29115c1a5c.js:26744)
at Scope.$eval (angular-29115c1a5c.js:17972)
at Scope.$apply (angular-29115c1a5c.js:18072)
at Scope.scopePrototype.$apply (hint.js:1558)
at HTMLAnchorElement.<anonymous> (angular-29115c1a5c.js:26749)
at HTMLAnchorElement.dispatch (jquery-888d4551b8.js:4737)
at HTMLAnchorElement.elemData.handle (jquery-888d4551b8.js:4549)

我的域名'127.0.0.1:3000'呈现为'%3127.0.0.1:3000'。我知道如何修复它吗?谢谢

最佳答案

问题不在于你的字符串如何呈现,如果你在 Chrome 浏览器控制台中运行以下代码,你会得到同样奇怪的错误:

window.open('127.0.0.1:3000');

您尝试打开的字符串不是有效的 URL,您需要包含协议(protocol):

window.open('http://127.0.0.1:3000');

错误消息有点误导,我认为这是一个错误。

关于javascript - 无法在 'open' : Unable to open a window with invalid URL 'Window' 上执行 '%3127.0.0.1:3000',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46421194/

相关文章:

html - 学习 Bootstrap : column stacking, 调整大小时需要新行堆叠

javascript - 如何使用 Grunt.js 将消息添加到输出文件?

javascript - Cookie 不随 Ajax 调用一起存储

javascript - 取消 slider 无法与按钮一起使用

javascript - 如何在 xcode 4.0.2 中调试 javascript?

javascript - 将对象数组中两个属性的唯一值存储到单个数组中

javascript - 删除并刷新后 Cookie 仍然存在

javascript - 在 $scope 变量中转义 html 的快速方法

javascript - 定义参数时,主干 View 事件似乎不执行函数

ruby-on-rails - 在生产中我需要咖啡轨、萨斯轨等吗?