我正在使用Onsen,Monaca和AngularJS编写一个跨平台应用程序。
我有一个标准的 LOGiN 屏幕,用户必须在其中输入他们的用户 ID,以便我可以通过 API 调用登录他们。
但是,按照此示例从这里开始,我无法显示我的用户ID。请问谁能看到我哪里出错了?
我看到的输出看起来像这样:您的用户ID是:{{lastName}}
包括所有代码。
索引.html
<!DOCTYPE HTML>
<html ng-app="myApp">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<meta http-equiv="Content-Security-Policy" content="default-src * data:; style-src * 'unsafe-inline'; script-src * 'unsafe-inline' 'unsafe-eval'">
<!-- Mobile web App Capable -->
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="mobile-web-app-capable" content="yes">
<title>Management</title>
<!-- Tests -->
<script type="text/javascript" src="js/app.js"></script>
<script src="components/loader.js"></script>
<script src="js/winstore-jscompat.js"></script>
<link rel="stylesshet" href="components/monaca-onsenui/js/angular/angular-csp.css">
<link rel="stylesheet" href="components/loader.css">
<link rel="stylesheet" href="css/style.css">
<link rel="stylesheet" href="css/style.css">
<script>
var myApp = angular.module('myApp', ['onsen']);
</script>
</head>
<body>
<ons-navigator var="myNavigator" page="login.html"></ons-navigator>
</body>
</html>
登录.html
<ons-page>
<ons-toolbar>
<div class="center">Login</div>
</ons-toolbar>
<div ng-controller="personController">
<form class="login-form" style="text-align: center" name="myForm">
<section style="padding: 8px">
<input type="password" class="text-input--underbar" required minlength="3" maxlength="4" placeholder="User ID" ng-model="firstName">
</section>
<section>
<div style="color: #015794; text-align: right">
<label class="checkbox--noborder">
<input type="checkbox">
<div class="checkbox__checkmark"></div>
<small>Remember Me</small>
</label>
</div>
</section>
<div ng-app="myApp" style="text-align: center; color: #889DA8">
Your User ID is: <br><strong>{{lastName}}</strong>
</div>
<section style="padding: 0 8px 8px">
<ons-button var="saveBtn" ng-disabled="myForm.$invalid" modifier="large" onclick="modal.show('modal')">Log In</ons-button>
</section>
</form>
</div>
</ons-page>
应用.js
angular.module("myApp", []).controller("personController", function($scope)
{
$scope.firstName = "John";
$scope.lastName = "Doe";
});
在我看来,问题似乎出在结构上。你似乎以错误的顺序做事,并且可能做一些事情两次。目前你有
<script type="text/javascript" src="js/app.js"></script>
<script src="components/loader.js"></script>
...
<script>
var myApp = angular.module('myApp', ['onsen']);
</script>
您正在应用程序中定义控制器.js。然而,似乎应该在之后使用加载器.js加载角度,并且您在最后添加温泉,再次创建相同的角度模块。
顺序应该是先loader.js
然后app.js
,这应该在第一行添加温泉。
索引.html
<script src="components/loader.js"></script>
<script src="js/app.js"></script>
应用.js
angular.module("myApp", ['onsen']).controller("personController", function($scope){
$scope.firstName = "John";
$scope.lastName = "Doe";
});
演示