请帮忙解释一下,如何在没有模块的情况下编写angularjs版本1 或控制器。
我曾经使用过上面的JQuery代码,请你帮我把我的Jquery源代码更新到Angularjs版本1.我的源代码是:
function checkPermission(){
$.ajax({
type: 'POST',
url: 'some url her...',
dataType: 'json',
catche: false,
success: function(result) {
alert(result);
console.log(result);
}
});
}
$(document).ready(function(){
checkPermission();
});
$(document).on('click',function(event){
console.log(".....");
});
谢谢!
答案 0 :(得分:0)
你问的是不可能的,问题是我想要angularjs
没有module
和controller
或者这个框架的其他选择?
Angularjs
是一个强大的框架,如果你学习它,你会忘记jQuery
或至少你会在你的应用程序中使用它的1%。
其他语言angularjs
没有module
,service
,factory
以及许多其他功能等于jQuery
。
答案 1 :(得分:0)
如果你使用Angular.js,你将需要一个模块和控制器。如果你想让它看起来像JQuery,那就改用JQuery。
要将您的应用程序编写为角度应用程序,在导入JavaScript后,您需要声明将要使用的模块。在像你这样的简单应用程序中,在html元素上执行此操作是正常的。 html标签内的所有内容都是您的应用。
<html ng-app="testApp">
此应用必须在您的JavaScript中定义。
var app = angular.module('testApp', []);
接下来,您需要定义将保存自定义代码的控制器。如果你想使用Angular.js,就无法解决这个问题。控制器连接到元件,其中的所有内容都由控制器处理。我还添加了一个按钮来运行你的点击事件。
<body ng-controller="MainCtrl">
<button ng-click="onClick()">Click me</button>
</body>
控制器已添加到JavaScript中的应用中。我需要注入$ http模块才能发出http请求。
app.controller('MainCtrl', function($scope, $http) {
$http.post('some url here...', {body: 'body data'})
.then(function(result) {
console.log(result.data)
})
.catch(function (err) {
console.log(err)
})
$scope.onClick = function () {
console.log('.....');
}
});
这是一个有效的演示:
https://embed.plnkr.co/1ZUdAY58loT3dYJLXVNR/
这是作为角度应用程序运行的代码的最简单的工作示例。我建议你通过一个教程来学习基础知识。尽管W3schools声名狼借,但他们的Angularjs教程非常擅长掌握基础知识:
https://www.w3schools.com/angular/default.asp
除非您有特殊原因需要Angularjs,否则您应该考虑学习Angular。按照此处的“使用入门”说明进行操作:https://angular.io/