我正在通过AngularJs学习曲线,我发现实际上没有任何实例可供现实世界使用.
我试图清楚地了解如何提交具有最标准组件的表单并将其传递给PHP文件.
我的小提琴.
有没有人有任何关于提交简单,无污染的表格的好例子,这些表格可以帮助我和许多其他Angularjs初学者.
当我说一个干净的形式时,我指的是这样的东西..
<div ng-app="myApp">
<form name="saveTemplateData" action="#" ng-controller="FormCtrl" ng-submit="submitForm()">
First name: <br/><input type="text" ng-model="form.firstname"> <br/><br/>
Email Address: <br/><input type="text" ng-model="form.emailaddress"> <br/><br/>
<textarea rows="3" cols="25" ng-model="form.textareacontent"></textarea>
<br/><br/>
<input type="radio" ng-model="form.gender" value="female" />Female ...
<input type="radio" ng-model="form.gender" value="male" />Male <br/>
<br/><br/>
<input type="checkbox" ng-model="form.member" value="5"/> Already a member
<br/><br/>
<input type="file" ng-model="form.file_profile" id="file_profile"><br/>
<input type="file" ng-model="form.file_avatar" id="file_avatar">
<br/><br/>
<!-- <button ng-click="save()" >Save</button> -->
<input type="submit" ngClick="Submit" >
</form>
</div>
Run Code Online (Sandbox Code Playgroud)
我的ng-app代码......
var app = angular.module('myApp', []);
app.controller('FormCtrl', function …Run Code Online (Sandbox Code Playgroud) 我在Chrome控制台中收到以下错误,
TypeError: Cannot read property 'jquery' of undefined
Run Code Online (Sandbox Code Playgroud)
这是我的javascript函数,
<script type="text/javascript">
var formApp = angular.module('formApp',[]);
function formController($scope,$http){
$scope.formData = {};
$scope.processForm = function(){
$http({
method : 'POST',
url : 'http://localhost:8080/ABCAPI/v1/image/front',
data : $.param($scope.formData.imageFile),
headers : {'Content-Type': "multipart/form-data" , 'Auth-Token' : "X"}
}).success(function(data){
console.log("");
if (!data.success) {
// if not successful, bind errors to error variables
} else {
// if successful, bind success message to message
$scope.message = data.message;
}
})
};
}
</script>
Run Code Online (Sandbox Code Playgroud)
上述错误意味着什么,我哪里出错了?
我正在使用systemJS来管理我的包,所以我已经将这些行添加到我的systemjs的配置文件中:
{
map: { 'ng2-file-upload': 'node_modules/ng2-file-upload' },
packages: {
'ng2-file-upload': {
main: './ng2-file-upload/ng2-file-upload.js', // also tried with './ng2-file-upload.js'
defaultExtension: 'js'
},
}
}
Run Code Online (Sandbox Code Playgroud)
我导入NG2文件上传通过import { FileDrop, FileUploader } from 'ng2-file-upload';.
但导入导致我的应用程序"崩溃":我的typscript编译器似乎运行良好(我可以看到由于其他代码的日志),但修改不再被转换,所以我不能运行任何东西.我没有与ng2-file-upload相关的任何错误日志(除了很多Duplicate identifiers).
任何的想法 ?
编辑:我已经将这个包从node_modules我的应用程序(vendor)附近的文件夹中提取出来,并且我使用了相对路径导入FileDrop,FileUploader但是systemjs无法导入:
Error: SyntaxError: Unexpected token <(…)
编辑2:这是一些细节.我的应用程序在public其中包含2个子文件夹:src和build.我在里面写了ts代码src(很明显),我的tsc将转换后的文件保存到build.目前,我没有捆绑我的文件,因此里面的层次结构build与那个层次结构相同src.
但只有ng2-file-upload才会发生奇怪的事情:在转换过程中,tsc会在node_modules/ng2-file-upload里面添加一个文件夹build.这是树木: …
angularjs ×2
javascript ×2
angular ×1
file-upload ×1
forms ×1
jquery ×1
php ×1
systemjs ×1
typescript ×1