Javascript ngStorage($localStorage)dosen';I don’我不在家工作
我对这件事有意见。当我将我的工厂用于jQuery的Javascript ngStorage($localStorage)dosen';I don’我不在家工作,javascript,angularjs,Javascript,Angularjs,我对这件事有意见。当我将我的工厂用于jQuery的$ajax时,我不能在中使用$localStorage 如果我在.then()外部使用$localStorage,它可以工作,但我必须将它放在内部 $scope.updateProfile = function () { $localStorage.currentUser.fullname = $scope.dataProfile.u_fullname; updateProfileFactory.init($sco
$ajax
时,我不能在中使用$localStorage
如果我在.then()外部使用$localStorage
,它可以工作,但我必须将它放在内部
$scope.updateProfile = function () {
$localStorage.currentUser.fullname = $scope.dataProfile.u_fullname;
updateProfileFactory.init($scope.dataProfile).then(
function (data) {
if (data.status == "success") {
// code
}
}
)
}
问题出在哪里?为什么不使用Angular的$http
库来处理AJAX内容?混合使用jQuery和Angular会产生不可预测的结果
我可以看出您已经在应用程序中使用了Angular。所以你没有理由不完全按照这个角度去做。$http
服务提供jQuery的$.ajax
提供的所有功能以及更多功能
当您在普通Javascript或jQuery函数中使用Angular函数时,Angular不知道调用了这些函数,因为它们超出了它的范围。在这里,您可以使用Angular的$apply
,但这并不理想,而且很粗糙
这里的问题可能是,$.ajax
的回调函数不知道$localStorage
,因为它不是作为依赖项传入的。为什么不使用Angular的$http
库来完成ajax的工作?混合使用jQuery和Angular会产生不可预测的结果
我可以看出您已经在应用程序中使用了Angular。所以你没有理由不完全按照这个角度去做。$http
服务提供jQuery的$.ajax
提供的所有功能以及更多功能
当您在普通Javascript或jQuery函数中使用Angular函数时,Angular不知道调用了这些函数,因为它们超出了它的范围。在这里,您可以使用Angular的$apply
,但这并不理想,而且很粗糙
这里的问题可能是,$的回调函数不知道$localStorage
,因为它不是作为依赖项传入的。请更努力地定义“它不工作”。您是否可以调试以查看是否调用了then
函数?请更努力地定义“它不工作”。您是否可以调试以查看是否调用了then
函数?我使用$.ajax,因为$http“POST”在标题和数据格式方面存在默认问题。这更容易。如果你能发布你遇到的问题,我们可以帮你解决。没有什么东西是$http
做不到的。可以设置标题,您可以完全控制负载,我还有一个项目,其中使用$.ajax更快、更简单、更好。我的问题不是关于$.ajax和$http,所以你的answears没有帮助。当你在普通Javascript或jQuery函数中使用Angular函数时,Angular不知道这些函数被调用了,因为它们不在它的范围之内。在这里,您可以使用Angular的$apply,但这并不理想,而且很粗糙。
我已经在这里解决了您的问题。我只是想为您指出正确的方向,这将在将来为您避免很多麻烦,因为我过去就在那里。抱歉,如果您觉得我使用了$.ajax,因为$http“POST”在标题和数据格式方面存在默认问题。这更容易。如果你能发布你遇到的问题,我们可以帮你解决。没有什么东西是$http
做不到的。可以设置标题,您可以完全控制负载,我还有一个项目,其中使用$.ajax更快、更简单、更好。我的问题不是关于$.ajax和$http,所以你的answears没有帮助。当你在普通Javascript或jQuery函数中使用Angular函数时,Angular不知道这些函数被调用了,因为它们不在它的范围之内。在这里,您可以使用Angular的$apply,但这并不理想,而且很粗糙。
我已经在这里解决了您的问题。我只是想为您指出正确的方向,这将在将来为您避免很多麻烦,因为我过去就在那里。如果你不这么想,我会道歉
$scope.updateProfile = function () {
$localStorage.currentUser.fullname = $scope.dataProfile.u_fullname;
updateProfileFactory.init($scope.dataProfile).then(
function (data) {
if (data.status == "success") {
// code
}
}
)
}