私は、次の親と子(http://jsfiddle.net/j1ee5zss/2/)持っている:私は「私のモデル」、例えば、親モデルを取得しようとしていた子ディレクティブでディレクティブのスコープ変数が定義されていないのはなぜですか?
<div parent parent-model="my-model">
<div child>Child</div>
</div>
を:
app.directive("parent", parent);
function parent() {
var parent = {
controller: ["$scope", controller],
replace: false,
restrict: "A",
scope: {
model: "="
}
};
return parent;
function controller($scope) {
this.getModel = function() {
return $scope.model;
}
}
}
app.directive("child", child);
function child() {
var child = {
link: link,
replace: false,
require: "^parent",
restrict: "A"
};
return child;
function link(scope, element, attributes, controller) {
var model = controller.getModel();
console.log(model);
}
}
なぜモデルがありますconsole.log(model)を書くと未定義ですか?
あなたが提供したフィディルドでは未定義には戻っていないようです。 – Ioan
実際、コンソールに 'model'と表示されます(chrome/mac最新版) – Pevara
申し訳ありませんが、間違ったフィドル...新しいものを確認してください。ちょうど私の質問を更新しました –