Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从父级访问角度1.x组件属性_Javascript_Css_Angularjs_Model View Controller_Components - Fatal编程技术网

Javascript 从父级访问角度1.x组件属性

Javascript 从父级访问角度1.x组件属性,javascript,css,angularjs,model-view-controller,components,Javascript,Css,Angularjs,Model View Controller,Components,我创建了一个角度为1.x的星形评级组件。要求组件有多个实例,因此额定值不同 但是,我无法找到从组件中读取starCount变量的方法。我试着浏览文档,尝试绑定属性,但是没有用 这只需要Vue.js中的一个v-model属性,但我无法为angular找到类似的属性 var app = angular.module('app', []); app.component('star', { template: `<ul class="star"> <li cl

我创建了一个角度为1.x的星形评级组件。要求组件有多个实例,因此额定值不同

但是,我无法找到从组件中读取starCount变量的方法。我试着浏览文档,尝试绑定属性,但是没有用

这只需要Vue.js中的一个v-model属性,但我无法为angular找到类似的属性

var app = angular.module('app', []);
app.component('star',  {
    template: `<ul class="star">
        <li class="fa" ng-class="$ctrl.starCount >= 1 ? 'fa-star' : 'fa-star-o'" ng-click="$ctrl.starCount=1" />
        <li class="fa" ng-class="$ctrl.starCount >= 2 ? 'fa-star' : 'fa-star-o'" ng-click="$ctrl.starCount=2" />
        <li class="fa" ng-class="$ctrl.starCount >= 3 ? 'fa-star' : 'fa-star-o'" ng-click="$ctrl.starCount=3" />
        <li class="fa" ng-class="$ctrl.starCount >= 4 ? 'fa-star' : 'fa-star-o'" ng-click="$ctrl.starCount=4" />
        <li class="fa" ng-class="$ctrl.starCount >= 5 ? 'fa-star' : 'fa-star-o'" ng-click="$ctrl.starCount=5" />
    </ul>`,
    controller: function () {
         this.starCount = 0;
    }
});
var-app=angular.module('app',[]);
应用组件(“星型”{
模板:`
  • `, 控制器:函数(){ 这是0.starCount=0; } });
完整代码和演示如下:

必须向配置添加绑定才能将数据传递到组件:

controller: ...,
bindings: {
    starCount: '<'
}

// in your html
<star star-count="3"></star>
控制器:。。。,
绑定:{

starCount:“如何从主应用程序访问它?您可以在模板的控制器中使用一个变量,您希望在其中使用星形组件,例如
$scope.starCount=5;
,并在html
中写入。您可以显示一个演示吗?我尝试了这个方法,但它不起作用。它没有更新值。我使用双向绑定修复了它。”