我正在嘗試使用React js和Angular迭代項目,並構建所需的模板,因爲我正在以角度方式進行速度/組織問題。我遍歷一系列項目,併爲每個項目創建新的子範圍,並使用該數據構建標記。我的問題是,有沒有辦法將新添加的子作用域附加到現有的控制器,以便連接控制器所具有的任何方法/變量?將角度綁定控制器添加到新範圍
以下是可以訪問父範圍並創建子範圍的React標記。例如,我想綁定一個示例控制器名稱「CtrlItem」。這種事情可能嗎?
var feedRepeat = React.createClass({
render: function() {
var template,
parent = this.props.scope,
child;
return (
<div>
{parent.items.list.map(function(item, i) {
if (!MVItems[item.type]) { return false; }
template = MVItems[item.type];
child = parent.$new(true)
child.data = item;
return (
<template scope={child} />
)
}, this)}
</div>
)
}
})
var MVItems = Object of templates...
更新
這裏的角惹我試圖解決。 基本上我通過ng-include加載了一個額外的模板,因爲角度不會讓我在指令實例化時加載動態模板。我覺得必須有一個更好的辦法來編譯比用模板NG-包括或NG開關
// main-view.html
<div class="results">
<article ng-repeat="item in items.list" class="item" ng-class="item.type">
<div ng-include="'views/items/' + item.type + '-template.html'" class="inner"></div>
</article>
</div>
// soundcloud-template.html
<soundcloud-music-item item="item"></soundcloud-music-item>
// the directive
myApp.directive 'soundcloudMusicItem', [ ->
restrict: 'E'
scope:
item: '='
controller: 'soundcloudMusic'
templateUrl: 'views/items/soundcloud-music-item.html'
link: (scope, el, attr, ctrl) ->
]
我試圖做的是切斷其乾脆加載的SoundCloud,template.html。
我很想知道你用角度方法遇到的速度/組織問題。 –