Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.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 更改位置路径时相同控制器的$scope_Javascript_Angularjs - Fatal编程技术网

Javascript 更改位置路径时相同控制器的$scope

Javascript 更改位置路径时相同控制器的$scope,javascript,angularjs,Javascript,Angularjs,我有两个页面index.html/view和index.html/update view和update也是html文件 它们的布局基本相同,只是视图仅用于查看,更新用于编辑,它们使用相同的指令,使用search-div.html作为模板的search div和使用result-div.html的result div 和一个公共控制器PageCtrl search-div.html <div> <form> <input ng-model="p

我有两个页面index.html/view和index.html/update view和update也是html文件

它们的布局基本相同,只是视图仅用于查看,更新用于编辑,它们使用相同的指令,使用search-div.html作为模板的search div和使用result-div.html的result div 和一个公共控制器PageCtrl

search-div.html

<div>
    <form>
        <input ng-model="page.id">
        <input ng-model="page.type">
        <button ng-click="page.cancel()">Cancel</button>
        <button ng-click="page.submit()">Submit</button>
    </form>
</div>
update.html

<div ng-controller="PageCtrl as page">
    <search-div></search-div>
    <result-div></result-div>
    <button ng-click="page.save()">Save</button>
</div>

重新定向到另一个页面没有问题,但是,id和类型不会反映在更新的search-div中。$scope from view to update指令会发生什么变化?如何正确地将view$scope的值传递给update$scope?我还想知道如何在更新页面中显示结果div,与查看页面中的结果相同。

在修改函数中,您接受id和类型,但使用deviceId和deviceType。我认为您打算使用这些参数。对不起,这只是复制和粘贴时的一个打字错误。我纠正了它。同样的问题。尝试设置id和类型,然后重定向。@KarlenKishmiryan Nope,不起作用。仍在重定向,输入字段为空。您需要创建一个[service][1]来跨视图传递数据。在视图之间移动时,您将处理上一个控制器。[1]:
<div ng-controller="PageCtrl as page">
    <search-div></search-div>
    <result-div></result-div>
    <button ng-click="page.modify('update', page.id, page.type)">Modify</button>
</div>
<div ng-controller="PageCtrl as page">
    <search-div></search-div>
    <result-div></result-div>
    <button ng-click="page.save()">Save</button>
</div>
$scope.modify = function(path, id, type) {
    $location.path(path);
    $scope.id = id;
    $scope.type = type;
};