Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.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.5组件绑定_Javascript_Angularjs_Angular2 Components_Angular Components - Fatal编程技术网

Javascript 控制器不工作时的角度1.5组件绑定

Javascript 控制器不工作时的角度1.5组件绑定,javascript,angularjs,angular2-components,angular-components,Javascript,Angularjs,Angular2 Components,Angular Components,因此,在我使用控制器执行某个功能之前,我的绑定一直在工作。我可以执行$ctrl.value,并且数据的值显示在视图上 当我尝试实现一个控制器时,该值将变得未定义。为什么会这样 当前组件: module.component('ratingComponent'){ templateUrl:'jay-movies/movie rating.component.html', 绑定:{ 值:“我想您忘了将vm放在scope对象之前。 所以在模板中试试这个 ng-repeat="stars in vm.e

因此,在我使用控制器执行某个功能之前,我的绑定一直在工作。我可以执行$ctrl.value,并且数据的值显示在视图上

当我尝试实现一个控制器时,该值将变得未定义。为什么会这样

当前组件:

module.component('ratingComponent'){
templateUrl:'jay-movies/movie rating.component.html',
绑定:{

值:“我想您忘了将
vm
放在scope对象之前。 所以在模板中试试这个

ng-repeat="stars in vm.entries track by $index "

你有下面提到的几个错误

< >在使用<代码>控件> 语法时,不要将<代码> $范围>代码范围。这里使用的是组件,因此不应考虑使用<代码> $范围< /C> > /LI>
  • 绑定
    将在控制器上下文中可用。因此,尽管有
    $scope.value
    ,但一定要使用
    vm.value
  • 在组件启动时赋值时,使用
    $onInit
    生命周期挂钩
  • 现在使用上的
    vm.entries
    ,而不仅仅是
    entries
  • 控制器

    controller: ()=>{
        let vm = this;
        $onInit(){
           vm.entries = new Array(vm.value);
           onsole.log(vm.entries);
        }
    }
    

    请尝试此
    ng repeat=“stars in vm.entries track by$index”
    部分为真。要实现此目的,OP必须进行几项更改。请检查以下内容:)我用$scope.entries绑定条目,所以我不必使用控制器vm,对吗?这样我就可以看到视图,使用vm时,我的视图不会出现。当使用scope视图时,会出现,但没有来自值的数据,因为scope.entries和vm.entries在控制台时都给我未定义的值。您使用
    co的主控制器吗controlleras
    语法?我的意思是,对于试图解决这个问题的
    ,可能使用controller而不是scope,但这造成了更多的问题视图也被第一个问题“value”数据未定义所阻塞,所以目前我只是在使用scope,没有将controller用作。如果你ave time你是对的。我没有注意使用
    $scope
    。谢谢你提到它。你的答案总是完整的:)我忘了在评论中提到我在scope之前第一次尝试使用controller,它是同一个vm,条目仍然未定义。我假设下面是$onInit的正确sintax,它会引发代码错误。controllerAs:'vm',controller:()=>{let vm=this;vm.$onInit=()=>{vm.entries=new Array(vm.value);console.log(vm.entries);}@jaychacko你能加上plunker/fiddle吗,那对我深入挖掘会有帮助这就是全部代码,plunker今天不想工作,我想:)