cordova-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chris Emerson (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CB-4708) injectPluginScript() can't find cordova_plugins.js when app is on an HTML file in a sub folder of www
Date Fri, 30 Aug 2013 13:30:52 GMT

    [ https://issues.apache.org/jira/browse/CB-4708?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13754686#comment-13754686
] 

Chris Emerson commented on CB-4708:
-----------------------------------

Yep - about 95% sure findCordovaPath() (in cordova.js) is the culprit.

findCordovaPath() depends on the user having <script src="cordova.js"></script>
in the HTML page otherwise it fails and returns null. 

In my case I have abstracted the base init methods for my app into a app.js file. To maintain
a DRY programming style I have my cordova.js call in that app.js file not my HTML files. It
is setup like this:

if(isMobile.any()){
        document.write("<script type='text/javascript' src='" + rootURL + "cordova.js'></script>");
}else{
    window.console.log('NOT-DEVICE-MODE: Skipping loading of [cordova.js] and plugins...');
}

Personally I think this is a better model than putting a <script src="cordova.js"> tag
on every HTML page in my app so I'd prefer that findCordovaPath is updated to be smarter if
possible. 

For now I'll comment out my above code and put the <script> tag on all my app's HTML
files - but I look forward to hearing from others/anyone here on a hopeful fix so I can go
back to keeping things nice and DRY. :)

Thanks.

                
> injectPluginScript() can't find cordova_plugins.js when app is on an HTML file in a sub
folder of www
> -----------------------------------------------------------------------------------------------------
>
>                 Key: CB-4708
>                 URL: https://issues.apache.org/jira/browse/CB-4708
>             Project: Apache Cordova
>          Issue Type: Bug
>    Affects Versions: 3.0.0
>         Environment: iOS / Xcode 4.6.3 (4H1503)
> OS X 10.8.4
>            Reporter: Chris Emerson
>              Labels: cordova_plugins.js,, injectPluginScript, plugins,
>
> Summary: 
> injectPluginScript() can't find cordova_plugins.js when app is on an HTML file in a sub
folder of www. 
> Details:
> I've confirmed that the cordova_plugins.js file that sits in the www folder never gets
loaded if the app has navigated to an html file in a sub folder of www. 
> In my app/tests I have 14 plugins loading. The [moduleList] object that is instantiated
and set in cordova.js confirms this when I check moduleList.length on the initial load of
the app. However, when I check after navigating to a html file in a sub folder of www the
moduleList object is empty. 
> The final confirmation of my theory/issue is that if I copy the current cordova_plugins.js
file to the sub folder where my app has navigated to the moduleList object *does* get populated
correctly, the finishPluginLoading() in cordova.js finishes successfully and my plugins are
available in the app once again.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message