我已经使用标准文件组织启动了我的应用项目。然后我切换到更精细的文件夹结构。 当我通过(离子服务)在Chrome上运行我的应用程序时,一切都运行得很完美,但是当我通过Cordova(离子运行android)将我的应用程序部署到我的手机时,它无法找到我创建的自定义文件。
似乎缺少某种许可。什么可能是错的想法?
更新:app项目也存在于/ platforms / android / assets /下。 在该文件夹中" www / components /..."文件存在。
路径:www / templates / client.html ----->这个工作
.state('app.client', {
url: '/client',
views: {
'menuContent': {
templateUrl: 'templates/client.html',
controller: 'ClientCtrl'
}
}
})
路径:www / components / client / views / client.html ----->这样做不行
.state('app.client', {
url: '/client',
views: {
'menuContent': {
templateUrl: 'components/client/views/client.html',
controller: 'ClientCtrl'
}
}
})
的index.html 使用chrome的调试我注意到客户端JS文件不可访问。因此,它可能是gulp的一些问题,以及它如何将文件复制到APK文件......
<script src="js/app.js"></script>
<script src="js/controllers.js"></script>
<script src="components/client/client-controller.js"></script>
<script src="components/client/client-service.js"></script>
答案 0 :(得分:2)
发现问题!!
该问题与文件夹权限无关,但与缓存的构建文件有关。
我第一次用大写字母创建了文件夹。 “组件/客户端/视图”
在代码和物理文件中重命名文件之后,更改无效,因为离子构建过程会保留文件夹结构的缓存。
删除/ android / build /文件夹的内容解决了这个问题。
答案 1 :(得分:0)
Ionic App中的视图通常被称为模板,因为Angular控制器会将其称为模板。因此,视图通常存储在/ templates文件夹中,其中每个视图都在一个单独的.html文件中。因此,我的建议是将您的组件文件夹保留在templates文件夹中,以便templateUrl的路由为:templates / components / client / views / client.html。 此外,必须在index.html中定义控制器和服务文件路径。希望它满足您的需求。