Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.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
Angularjs var vm=在这种情况下不起作用_Angularjs_Ionic Framework - Fatal编程技术网

Angularjs var vm=在这种情况下不起作用

Angularjs var vm=在这种情况下不起作用,angularjs,ionic-framework,Angularjs,Ionic Framework,我正在使用controllerAs,我想知道为什么在这种情况下,var vm=this不起作用(我猜它对离子相关的东西不起作用): 当然,它确实可以使用$scope。我的绑定实际上可以用于我的测试:vm.title(它正确地显示在我的视图中)

我正在使用controllerAs,我想知道为什么在这种情况下,
var vm=this
不起作用(我猜它对离子相关的东西不起作用):

当然,它确实可以使用$scope。我的绑定实际上可以用于我的测试:
vm.title
(它正确地显示在我的视图中)<找不到任何相关信息,有人能解释一下吗?我希望摆脱所有的$scope,但有时我就是做不到。谢谢


编辑:我发现了我的错误!在我看来,我忘记添加虚拟机了。在我的方法上。。。当然不行了!:p

我也更喜欢使用controller作为语法,并且在controllers中去掉对
$scope
的引用(最终更新为Angular2和更高版本)。我更喜欢使用controlleras实现控制器的方式与上面描述的类似,只是做了一些调整。如您所见,
$scope
不再需要导入,这将使模板中的函数可用

function TutorialCtrl($state, $ionicSlideBoxDelegate, $ionicSideMenuDelegate) {

    var vm = {};
    vm.title = 'yo';

    vm.next = function() {
        $ionicSlideBoxDelegate.next();
    };

    // Called each time the slide changes
    vm.slideChanged = function(index) {
        vm.slideIndex = index;
    };

    return vm;
}

我发现了我的错误:在我看来,我忘记了将vm绑定到我的方法(即。
vm.mymethod
)。很明显,它不能工作。。。。现在一切正常。

controllerAs
表示您给了控制器一个别名。因此,每当你提到它的时候,你就使用别名,我完全知道这个lol,这并不能解释为什么在这个特殊的离子情况下它不起作用,这就是我想知道的<代码>vm.slideIndex=索引;这是失败的一行吗?na man除了vm.title之外,其他都是。我在某个地方读到它与爱奥尼亚有关。。。这没什么大不了的,只是想知道为什么它不能用:)哦,好吧。。。。。。它不起作用啊哈,但我知道它不会。。我不必返回vm(没有意义)。别担心,tho!
function TutorialCtrl($state, $ionicSlideBoxDelegate, $ionicSideMenuDelegate) {

    var vm = {};
    vm.title = 'yo';

    vm.next = function() {
        $ionicSlideBoxDelegate.next();
    };

    // Called each time the slide changes
    vm.slideChanged = function(index) {
        vm.slideIndex = index;
    };

    return vm;
}