草庐IT

angular 2 location.go vs window.location.href

coder 2024-02-28 原文

我知道 location.go 只会更改浏览器 url 而不会重新加载页面,而 window.location.href 会重新加载页面。

我不明白的是对 SEO 有影响。我的站点 url 方案的定义方式是,对于完全相同的页面,url 的各个部分可以采用不同的顺序。我们不希望有这个,因为谷歌会假设它是重复的内容来惩罚它。我有两种方法来处理这个问题 -

从用户体验的 Angular 来看,location.go 方法更可取。我可以加载页面并并行找到正确的 url,只需在浏览器中更改 url。但我不知道搜索引擎是否也从 location.go 获取输入。

请注意,我构建唯一 url 的逻辑有点复杂,需要我一直到数据库。因此,如果我选择 location.go 与 window.location.href 来更改 url,性能会有很大差异。

最佳答案

My site url scheme is defined in a way that parts of url can be in different order for the exact same page. We dont want to have this as google will penalize it assuming it to be duplicate content.

Google 不会因为重复的内容(不是那种重复的内容)而惩罚你,所以不用担心这个。但是,为了消除所有混淆,向您的页面添加一个规范标签,Google 就会明白它正在处理同一页面。

But I do not know if search engines also take the input from location.go.

Google 是已知的唯一在抓取页面时理解 Javascript 的搜索引擎。但是,这并不意味着它会理解您页面的所有内容。您最好将页面的静态版本提供给机器人以获得更好/最佳的 SEO。不要依赖 location.go 让搜索引擎找到您的网页。将您的网址放在站点地图中。

关于angular 2 location.go vs window.location.href,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38948619/

有关angular 2 location.go vs window.location.href的更多相关文章

  1. ruby-on-rails - 我该怎么办 :remote location validation with CarrierWave? - 2

    我在我的Rails3示例应用程序上使用CarrierWave。我想验证远程位置上传,因此当用户提交无效URL(空白或非图像)时,我不会收到标准错误异常:CarrierWave::DownloadErrorinImageController#createtryingtodownloadafilewhichisnotservedoverHTTP这是我的模型:classPaintingtrue,:length=>{:minimum=>5,:maximum=>100}validates:image,:presence=>trueend这是我的Controller:classPaintingsC

  2. ruby - 使用 Nokogiri 和 Ruby 从 html 文档获取链接和 href 文本? - 2

    我正在尝试使用nokogirigem提取页面上的所有url及其链接文本,并将链接文本和url存储在散列中。FooBar我想回去{"Foo"=>"#foo","Bar"=>"#bar"} 最佳答案 这是一个单行:Hash[doc.xpath('//a[@href]').map{|link|[link.text.strip,link["href"]]}]#=>{"Foo"=>"#foo","Bar"=>"#bar"}拆分一点可以说更具可读性:h={}doc.xpath('//a[@href]').eachdo|link|h[link.t

  3. ruby-on-rails - 为什么 Rails 使用像 link_to 这样的辅助方法而不是 <a href...>? - 2

    我正在学习Rails,我注意到Rails不断地使用诸如link_to之类的辅助方法,而不是仅仅使用普通的html。现在我可以理解为什么他们会使用他们会使用一些辅助方法,但我不明白为什么他们更喜欢辅助方法而不是直接编码html。为什么Rails更喜欢辅助方法而不是您必须手动编写html?为什么Rails团队做出这样的设计选择? 最佳答案 在Rails应用程序中,通常使用URL方法和内容方法生成链接,例如这绝对比将它们放入中更易于管理手动标记。">(您正在使用路由器生成这些URL,对吗?如果您硬编码/users/1并决定稍后将其设为/u

  4. ruby-on-rails - Rails with angular 与 Rails pure(查看性能) - 2

    我尝试在Internet上搜索有关使用angularJS进入RubyonRails项目与RubyonRailspure的View性能的信息。我的问题是因为2个月前我开始使用纯AngularJS,现在我需要将AngularJS集成到一个新项目中,但需要展示使用带有RubyonRails的AngularJS呈现View的性能如何,并消除对RubyonRails的负担.例如:带Rails的Angular:使用RubyonRails获取数据(从数据库或GET请求),将信息发送到file.js.erb并使用AngularJS操作数据并显示带有解析数据的View。纯粹的Rails:(自然流程)使用

  5. ruby-on-rails - 将 Angular JS 与 Rails 集成 - 2

    我需要一些指导来了解如何将Angular整合到rails中。选择Rails的原因:我喜欢他们偏执的做事方式。还有迁移,gem真的很酷。使用angular的原因:我正在研究和寻找最适合SPA的框架。Backbone似乎太抽象了。我不得不在Angular和Ember之间做出选择。我首先开始阅读Angular,它对我来说很有意义。所以我从来没有去读过关于ember的文章。使用Angular和Rails的原因:我研究并尝试使用小型框架,例如grape、slim(是的,我也使用php)。但我觉得需要坚持项目的长期范围。我个人喜欢用Rails的方式做事。这就是我需要帮助的地方,我在Rails4中有

  6. ruby-on-rails - Geocoding API 的响应不是有效的 JSON。和 request.location = nil - 2

    ifRails.env.development?@current_location_geo=Geocoder.search(request.remote_ip).firstelse@current_location_geo=request.locationendif!@current_location_geo.nil?&&@current_location_geo.ip=="127.0.0.1"@departure_currency_code="AUD"@departure_currency_name=["AustralianDollar(AUD$)","AUD"]else@count

  7. ruby-on-rails - vim/macvim : locate where a method/symbol is defined - 2

    我的大部分Ruby+RubyonRails开发都使用macvim/vim。目前是否有一种方法可以跳转到项目中定义方法的位置,即使它与调用它的位置不在同一个文件中?与语言无关的方式或特定于Ruby/Rails的方式均可。 最佳答案 我推荐使用ctags插件,BryanLiles制作了一个很好的截屏视频,介绍如何在Rails开发中使用它。http://smartic.us/2009/04/05/using-ctags-in-vim/来自他的页面:不那么完整的备忘单:^]–查找标签^T——倒退:tags–显示你去过的地方:tag–进入你的

  8. ruby-on-rails - rails : wkhtmltopdf RuntimeError (Location of wkhtmltopdf unknown) - 2

    我正在使用Ubuntu11.04在RubyonRails中开发一个应用程序。在应用程序中,我需要生成pdf文档。所以我正在使用wicked_pdf和wkhtmltopdf二进制gem。在我系统的开发环境中,一切正常。但是一旦我使用Phusion在CentOS5.6上部署应用程序乘客,当我尝试动态生成pdf时,出现以下错误:RuntimeError(wkhtmltopdf位置未知)我正在使用Ruby1.9.2.p136rails3.1.1任何帮助将不胜感激......谢谢。 最佳答案 另一种方法是通过Gemfile安装二进制文件。只需

  9. ruby - 如何找到super执行的代码的source_location? - 2

    classC1defprputs'C1'endendclassC2在上面的程序中,是否有可能获取super(在我们的例子中为C1::pr)执行的代码的位置,以及我们获取C2::pr代码使用source_location方法? 最佳答案 从ruby​​2.2开始,您可以像这样使用super_method:ClassAdefprputs"pr"endendClassB由于super_method返回一个方法,您可以将它们链接起来以查找祖先:defancestor(m)m=method(m)ifm.is_a?Symbolsuper_m=m

  10. 与Angular 2集成时,Bootstrap下拉列表和Bootstrap TagSinput不起作用 - 2

    Bootstrap下拉代码正常工作(无角2),但相同的代码与Angular2集成在一起,它无法按预期工作。HTML和CSS代码:[下拉活动正在工作。]YoucanLoginSignupHTML和具有角2的CSS[下拉行动不起作用。]YoucanLoginSignup看答案LoginSignup尝试此..使用最终版本,除非您有路径参数,否则RouterLink不应用作套餐。然后在路由器文件中RouterModule.forRoot([{path:"login",component:},{path:"signup",component:}])

随机推荐