离子找不到项目文件ERR_FILE_NOT_FOUND



我已经使用标准文件组织开始了我的应用程序项目。然后我切换到一个更复杂的文件夹结构。当我通过(ionic serve)在Chrome上运行我的应用程序时,一切都完美无瑕,但当我通过Cordova(ionic run android)将应用程序部署到手机上时,它找不到我创建的自定义文件。

似乎缺少某种权限。有什么可能出错的想法吗?

更新:该应用程序项目也存在于/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文件是不可访问的。因此,gump以及它如何将文件复制到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>

发现问题!!

该问题与文件夹权限无关,但与缓存的生成文件有关。

我第一次创建文件夹时用了大写字母。"组件/客户端/视图"

在我重命名了代码和物理文件中的文件后,这些更改没有起作用,因为ionic构建的过程保留了文件夹结构的缓存。

删除/android/build/folder的内容解决了问题。

Ionic应用程序中的视图通常被称为模板,因为Angular控制器是这样引用它们的。因此,视图通常存储在/templates文件夹中,其中每个视图都在一个单独的.html文件中。因此,我的建议是将您的组件文件夹保留在templates文件夹中,这样您的templateUrl的路由将是:templates/components/client/views/client.html。此外,控制器和服务文件路径必须在index.html中定义。希望它能满足您的需求。

相关内容

最新更新