理想情况下,当我单击按钮(位于顶部离子导航栏上)时,它应该将我带到另一页。但是它不起作用。单击后,导航栏按钮全部消失。
当我使用伪代码时,它可以工作;警报出现。但是,当我将其交换为实际代码时,它将无法正常工作。
我感觉控制器代码以及URL或视图的引用方式有问题。但是使用href和ui-sref进行测试也无法产生任何结果。Google Devt
Tools(JS控制台)和Batarang也没有显示任何内容。
有人可以给我指路吗?
虚拟HTML代码
<button class="button button-icon ion-compose" ng-click="create()"></button>
js文件中的虚拟控制器代码
$scope.create = function() {
alert("working");
};
实际的html代码(我尝试了全部4个版本)
<button class="button button-icon ion-compose" ng-click="create('tab.newpost')"></button>
<button class="button button-icon ion-compose" ui-sref="tab.newpost"></button>
<button class="button button-icon ion-compose" href="/tab/newpost"></button>
<button class="button button-icon ion-compose" ng-click="location.path('/tab/newpost')"></button>
控制器文件(“发布”和“验证”依赖项正常工作)。 当我尝试将URL放入.go()和function()时,应用程序失败。
app.controller('NavCtrl', function ($scope, $location, $state, Post, Auth) {
$scope.post = {url: 'http://', title: ''};
$scope.create = function() {
/* $location.path('/tab/newpost'); */ /* this variant doesnt work */
$state.go("/tab/newpost");
};
});
状态js文件的摘录
.state('tab.newpost', {
url: '/newpost',
views: {
'tab-newpost':{
templateUrl: 'templates/tab-newpost.html',
controller: 'NewCtrl'
}
}
});
$urlRouterProvider.otherwise('/auth/login');
基于评论,并且由于@Thinkerer ( OP- 原始海报) 为此案创建了一个小插曲,我决定在其他答案后附加更多详细信息。
第一个重要变化:
// instead of this
$urlRouterProvider.otherwise('/tab/post');
// we have to use this
$urlRouterProvider.otherwise('/tab/posts');
因为州的定义是:
.state('tab', {
url: "/tab",
abstract: true,
templateUrl: 'tabs.html'
})
.state('tab.posts', {
url: '/posts',
views: {
'tab-posts': {
templateUrl: 'tab-posts.html',
controller: 'PostsCtrl'
}
}
})
我们需要它们的串联url '/tab'
+ '/posts'
。这就是我们要用作 其他 网址的网址 __
该应用程序的其余部分确实接近我们需要的结果…
例如,我们仍然不得不将内容放入相同的视图targetgood中,只是对这些内容进行了更改:
.state('tab.newpost', {
url: '/newpost',
views: {
// 'tab-newpost': {
'tab-posts': {
templateUrl: 'tab-newpost.html',
controller: 'NavCtrl'
}
}
因为.state('tab.newpost'
要 替换 ,.state('tab.posts'
我们必须将其放置在相同的锚点中:
<ion-nav-view name="tab-posts"></ion-nav-view>
最后对控制器进行一些调整:
$scope.create = function() {
$state.go('tab.newpost');
};
$scope.close = function() {
$state.go('tab.posts');
};
正如我已经在我前面的答案和注释说 …的 $state.go()
是如何使用的唯一正确途径ionic
或ui-router
检查这里 所有内容 最后的注意事项-
我只是在tab.posts
… 之间进行导航tab.newpost
,其余部分类似
试图在用户删除数据时刷新页面。页面上的一些Html元素会自动更新,但主应用程序组件会保留旧数据,直到手动刷新页面。 不再像本例所示那样工作:如何在ionic 4中刷新页面 我尝试改用ngonit(),但没有成功。我也尝试过ChangeDetectorRef,但没有乐趣。 类型脚本 html 数据来自此。内容
问题内容: 如何从一页导航到另一页。假设我有一个登录页面,在输入用户名和密码字段并单击提交按钮后,它需要验证,如果用户名和密码都正确,则需要进入主页。主页内容需要显示。我在这里发布代码。在浏览器中,URL不断变化,但内容没有变化。 index.html home.html test.js 问题答案: 正如@dfsq所说,您需要一个ng-view来放置新视图。当然,如果将ng- view添加到索引中
问题内容: 我的主页上有一个表单,提交后,会将用户带到网站上的另一个页面。我想将输入的表单数据传递给下一页,例如: 用户在表格中输入的电子邮件地址在哪里。我到底该如何完成? 问题答案: 最好的方法是使用POST,这是超文本传输协议的一种方法https://developer.mozilla.org/en- US/docs/Web/HTTP/Methods index.php site2.php
预期:当单击来自一个组件(PhotosList)的图像时,它会路由到具有指定url的另一个页面以查看另一个组件(图像详细信息) 现实:当点击图像时,两个组件呈现在同一页面上,但url不同。 使用“react Router dom”中的导入{BrowserRouter作为路由器、交换机、路由、链接}; 这是返回的功能组件(PhotosList) 应用程序文件是
主要内容:实例ionic 单选按钮与标准 type="radio" 的 input元素类似。以下展示了现代app类型的单选按钮。 每个 item-radio 中的 type="radio" 的 input 元素的 name 属性都相同。radio-icon 类用于是否显示图标。 ionic 在单选项中使用了 <label> 元素,使其更易点击。 实例 <div class="list"> <label clas
ionic 单选按钮与标准 type="radio" 的 input元素类似。以下展示了现代app类型的单选按钮。 每个 item-radio 中的 type="radio" 的 input 元素的 name 属性都相同。radio-icon 类用于是否显示图标。 ionic 在单选项中使用了 <label> 元素,使其更易点击。 <div class="list"> <label class="