Я пытаюсь получить действительно базовую визуализацию страницы в Ionic, но, похоже, не может получить ничего, кроме белой страницы.
index.html:
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="vendor/ionic.min.css">
<title>IoT Launch</title>
<script type="text/javascript" src="vendor/vendor.js"></script>
<script type="text/javascript" src="js/bundle.js"></script>
<script type="text/javascript" src="cordova.js"></script>
</head>
<body ng-app="iot-launch">
<ion-nav-view></ion-nav-view>
</body>
</html>
Обратите внимание, что я использую Browserify для создания vendor.js и bundle.js от третьей стороны и моего собственного JavaScript с точкой входа в js/apps.js.
JS/app.js:
'use strict';
angular.module('iot-launch', ['ionic', require('./views/deviceList')])
.config(['$urlRouterProvider', function($urlRouterProvider) {
$urlRouterProvider.otherwise('/');
}])
.run(['$rootScope', '$state', '$stateParams', function($rootScope, $state, $stateParams) {
$rootScope.$state = $state;
$rootScope.$stateParams = $stateParams;
$rootScope.$on('$stateChangeError', console.log.bind(console));
$rootScope.$on('$stateChangeStart', console.log.bind(console));
$rootScope.$on('$stateNotFound', console.log.bind(console));
$rootScope.$on('$stateChangeSuccess', console.log.bind(console));
}]);
JS/просмотров /deviceList.js:
module.exports = angular.module('iot-launch.views.deviceList', [
'ionic'
])
.config(['$stateProvider', function($stateProvider) {
console.log('In deviceList config');
$stateProvider
.state('iot-launch.deviceList', {
url: '/',
template: '<ion-view title="hello"><ion-content>Hello</ion-content></ion-view>'
});
}])
.name;
Когда я заменяю <ion-nav-view></ion-nav-view>
содержимое шаблона, оно отображается на странице (т.е. Появляется Hello). Единственным выражением, появляющимся в консоли, является инструкция в конфигурации deviceList, поэтому код $ stateProvider, по-видимому, вызывается.
Я думал, что $urlRouterProvider.otherwise('/')
, имеющий состояние iot-launch.deviceList
с URL-адресом /
и используя <ion-nav-view></ion-nav-view>
в главном html файле, привести к шаблону в iot-launch.deviceList
появляющемся там, где появляется <ion-nav-view></ion-nav-view>
.
Я просто заметил, что я не определял iot-launch
которое, по-видимому, очень необходимо для состояния iot-launch.deviceList
. Удаление .deviceList
из имени состояния или определения iot-launch
похоже, исправляет его. Отсутствие сообщений об ошибках было очень усугубляющим.
In deviceList config