gpt4 book ai didi

angularjs - AngularJS + Phantom 的开放图问题

转载 作者:行者123 更新时间:2023-12-03 08:11:27 25 4
gpt4 key购买 nike

我正在运行 AngularJS 的设置AJAX 应用程序,并使用 PhantomJSAngular-seo库,以便为爬虫提供实际标记而不是 JS 代码。

不幸的是,我收到一条错误消息:

此附件的隐私设置阻止您将其发布到此时间轴。

这似乎是一个关注 many users 的问题, bu 在开发者社区没有受到任何关注。

我的 meta 标签,我必须提到的是,它们都充满了我进行的测试的当前信息:

  <meta property="og:type" content="website">
<meta property="og:title" content="{{model.title}}" />
<meta property="og:description" content="{{layout.og.description()}}" />
<meta property="og:image" content="{{layout.og.image()}}" />
<meta property="og:url" content="{{layout.og.currentUrl()}}" />

可能是什么问题

最佳答案

如果您检查那些元标记,即使在运行 Angular 时,内容属性也会像那样保留……不像 ng-bind 或将在运行时替换的东西。为了避免这种情况,我创建了以下指令:

angular
.module('app')
.directive('ngContent', [
function() {
return {
link: function($scope, $el, $attrs) {
$scope.$watch($attrs.ngContent, function(value) {
$el.attr('content', value);
});
}
};
}
])
;

然后通过以下方式实现:

<meta property="og:description" ng-content="myDescriptionFunction()" />

这将在 meta 标记中创建一个干净的 content="Some description here." 属性,因为该内容会动态变化...(浏览时在 chrome 检查器中观察元素)似乎有效对我来说!

关于angularjs - AngularJS + Phantom 的开放图问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19426589/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com