2017-03-16 21 views
1

この質問は、文字列を角度コントローラに渡すことができますが、テンプレートに定義されている変数は、長すぎるAngularjs How to pass parameter back to controller from directive with ng-clickの延期延長です。テンプレート定義変数を角度コントローラに渡す方法

このJSFiddleでは 'string'がコントローラに渡され、var fooは 'undefined'です。

のindex.html:

<div ng-app> 
    <div ng-controller="YourController"> 
    <button type="button" ng-click="showString(foo)">One</button> 
    <button type="button" ng-click="showString('Two')">Two</button> 
    <p>Result: {{string}}</p> 
    </div> 
</div> 

<script> 
    var foo = "bar"; 
</script> 

main.js:

function YourController($scope) { 
    $scope.string=''; 
    $scope.showString = function (provider) { 
    $scope.string= provider; 
    } 
} 

(ここではまず、スタックオーバーフローポストは...私に簡単に行く;))

答えて

0

解決策を見つけ、ここですupdated JSFiddleindex.html

1)、私はmain.jsで)

<script> 
    window.foo = "bar"; 
</script> 

2に

<script> 
    var foo = "bar"; 
</script> 

を変更し、私は

$scope.foo = window.foo; 

は、より良い解決策がある場合はコメントをお気軽にコメントを追加。

関連する問題