【发布时间】:2017-08-31 09:31:49
【问题描述】:
我正在使用 Angularjs 1.5。
创建了一个服务来处理 META 数据和页面标题。 尝试应用它。
问题是 - 出于某种原因,如果我直接在 <head> 标签上定义控制器:
<head ng-controller="headMetaController">
控制器根本不会被加载,但如果我用<head>将它包装在额外的<div>中:
<head>
<div ng-controller="headMetaController">
<title ng-bind="seoMetaService.title()"></title>
<meta name="description" content="{{ seoMetaService.metaDescription() }}">
<meta name="keywords" content="{{ seoMetaService.metaKeywords() }}">
<div>
</head>
=> 有效。
所以,我猜它与 <head> 标签特别相关 => 不确定,解决它的正确方法是什么?
我还担心将元数据放在额外的 <div> 中对于 SEO 目的可能不是一个好主意?
【问题讨论】:
-
你想做什么?
-
将
ng-controller移动到您的<html>标签。您将在该标签上同时拥有ng-app和ng-controller。
标签: javascript angularjs seo