角修改meta标签 [英] Angular modify meta tag
本文介绍了角修改meta标签的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个meta标签(苹果智能横幅),我想修改的飞行参数。但它是目前没有工作:
我想创建头前的NG-init的叫什么?如果是这样,我也可以通过负载法修改元?
下面是HTML:
<!DOCTYPE HTML>
< HTML LANG =ENNG-应用=对myApp级=passWindowDimensions>
< HEAD>
<间的charset =UTF-8>
<标题>&XXXXXX LT; /标题>
<链接rel =stylesheet属性HREF =CSS / app.css/>
<链接rel =stylesheet属性HREF =CSS / bootstrap.css/> < META NAME =苹果的iTunes应用程序CONTENT =APP-ID = XXXXXXX,APP-参数= {{paramRId}}> <! - 让搜索引擎知道我们是一个单页的AJAX应用程序 - >
< META NAME =片段的内容= GT!; <脚本SRC =JS / jquery.js和>< / SCRIPT>
<脚本SRC =JS / searchFunctions.js>< / SCRIPT>
< /头>
部分:
< DIV数据-NG-的init =loadMe()DIV CLASS =COL-MD-12 passWindowDimensions>
控制器:
/ **
*加载顺序。加载结果
* /
$ scope.loadMe =功能(){ $ scope.paramRId =测试;
};
解决方案
尝试服务和指导
module.factory(smartBanner功能(){
返回{
APPID:,
appArgument:
}
});
module.directive(smartBanner功能(smartBanner){
返回{
限制:E,
模板:'< META NAME =苹果的iTunes应用程序CONTENT =APP-ID = {{smartbanner.appId}},APP-参数= {{smartbanner.appArgument}}>< /元>' ,
更换:真实,
链接:功能(范围){
scope.smartbanner = smartBanner
}
}});
module.controller(TestCtrl功能($范围,smartBanner){
$ scope.update =功能(){
smartBanner.appId = $ scope.appId;
smartBanner.appArgument = $ scope.appArgument;
};
});
I have a meta tag (apple smart banner) and I want to modify the argument on the fly. However it is currently not working:
I assume the ng-init is called before the head is created? If so, I can modify the meta through a load method?
here is the html:
<!doctype html>
<html lang="en" ng-app="myApp" class="passWindowDimensions">
<head>
<meta charset="utf-8">
<title>XXXXXX</title>
<link rel="stylesheet" href="css/app.css"/>
<link rel="stylesheet" href="css/bootstrap.css"/>
<meta name="apple-itunes-app" content="app-id=XXXXXXX, app-argument = {{paramRId}}">
<!--Let search engines know we are a single page ajax app-->
<meta name="fragment" content="!">
<script src="js/JQuery.js"></script>
<script src="js/searchFunctions.js"></script>
</head>
Partial:
<div data-ng-init="loadMe()" div class="col-md-12 passWindowDimensions">
Controller:
/**
* Loading sequence. Loads the results
*/
$scope.loadMe = function(){
$scope.paramRId = 'test';
};
解决方案
Try a service and a directive
module.factory("smartBanner", function() {
return {
appId: "",
appArgument: ""
}
});
module.directive("smartBanner",function(smartBanner){
return {
restrict: "E",
template: '<meta name="apple-itunes-app" content="app-id={{smartbanner.appId}}, app-argument = {{smartbanner.appArgument}}"></meta>',
replace: true,
link: function(scope) {
scope.smartbanner = smartBanner
}
}
});
module.controller("TestCtrl", function($scope,smartBanner){
$scope.update = function() {
smartBanner.appId=$scope.appId;
smartBanner.appArgument=$scope.appArgument;
};
});
这篇关于角修改meta标签的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文