很抱歉,如果我在这里丢失了一些愚蠢的东西,但我真的尝试了各种组合来使这段代码正常工作,但没有运气。
我正在directive
AngularjS
从Recipes with AngularJS
学习p
,但坚持使用此代码 -
https://github.com/fdietz/recipes-with-angular-js-examples/tree/master/chapter3/recipe4
我认为它应该在 Hello World <!doctype html>
<html lang="en" ng-app="myApp">
<head>
<meta charset="utf-8" />
<title>Directive Example</title>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.10/angular.min.js"></script>
<script>
var myApp = angular.module("myApp", []);
myApp.directive("myWidget", function(){
return {
restrict: "E",
transclude: true,
template: "<div ng-transclude><h3>Heading</h3></div>"
};
});
</script>
</head>
<body>
<my-widget>
<p>Hello World!!</p>
</my-widget>
</body>
</html>
文字之前打印标题。但它不会来。让我知道我的代码中缺少的内容 -
代码整体 -
{{1}}
答案 0 :(得分:6)
检查“div”之前的第一个“h3”
template: "<h3>Heading</h3><div ng-transclude></div>"
答案 1 :(得分:2)
您需要更改配方的原因是因为Angular改变了v1.0和v1.2之间的转换工作方式。
随着变化eed299a3,Angular现在“在转移之前清除了转移点”。
如果加载v1.0(这是github存储库使用的),您将看到“标题”。使用v1.2,除非您按@Noypi解释的方式修改模板,否则不会看到“标题”。