我正在使用Umbraco 7.3.3和ArcheType,我使用AngularJS创建了自己的Twitter Rotator Block。如果我向页面添加一个块它可以很好地工作,但如果我添加另一个块(一个重复块但使用不同的参数)它不起作用。 以下是代码片段:
var fieldset = (ArchetypeFieldsetModel)ViewData["fieldset"];
// Dynamic Block Properties entered from CMS
var propWidth = @fieldset.GetValue("blockWidth"); //blockWidth
var propScreenName = @fieldset.GetValue("blockScreenName") != null ? @fieldset.GetValue("blockScreenName") : ""; //blockScreenName
var propHashTag = @fieldset.GetValue("blockHashTag") != null ? @fieldset.GetValue("blockHashTag") : ""; //blockHashTag
var uniqueId = @fieldset.Id;
twitterBlockModule.value("ScreenName", "@propScreenName").value("id", "@uniqueId").value("HashTag", "@propHashTag");
<div class="@Helpers.GetBootStrapWidth(propWidth)">
<div class="twitter-box">
<h3>Twitter</h3>
<div id="ng-apptwitter" ng-app="twitterControl" ng-controller="PostsTwitterCtrlAjax">
<div class=" twttopquote"><br /></div>
<div class="content">
<div class="twtspinner" ng-show="loading"><i class="fa fa-spinner fa-spin"></i><br /><span class="twtSpinnerText">Loading Twitter comments...</span></div>
<ul class="twitterlist" id="Twitterlist-@uniqueId"></ul>
</div>
<div class="twtBottomQuote"><br /></div>
</div>
</div>
var twitterBlockModule = angular.module("twitterControl", []);
twitterBlockModule.controller("PostsTwitterCtrlAjax",
function ($scope, $http, ScreenName, id, HashTag) {
$scope.ScreenName = ScreenName;
$scope.HashTag = HashTag;
$scope.id = id;
.....//More Code
});
);
如何让多个Block使用相同的JS代码,但是从单独的块中传入不同的参数而不会发生冲突? 谢谢