IBM Mobile First Platform(6.3) - Windows Phone 8环境和Angularjs [英] IBM Mobile First Platform (6.3) - Windows Phone 8 environment and Angularjs

查看:114
本文介绍了IBM Mobile First Platform(6.3) - Windows Phone 8环境和Angularjs的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用angularjs(+ angular-ui-router)创建演示应用程序来开发和构建到android,ios,windows phone 8环境。 Everythings在android,ios和移动网络模拟器上运行良好,但在Windows手机设备上它不显示我的自定义指令。我使用visual studio express 2012 for windows phone来构建。

I create demo app using angularjs (+ angular-ui-router) to develop and build to android, ios, windows phone 8 environment. Everythings works fine on android, ios and mobile web simulator, but on windows phone device it doesn't show my custom directive. I use visual studio express 2012 for windows phone to build.

in index.html:

in index.html:

  <!DOCTYPE HTML>
    <html>
            <head>
                <meta charset="UTF-8">
                <title>test</title>
                <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=0">
                <!--
                    <link rel="shortcut icon" href="images/favicon.png">
                    <link rel="apple-touch-icon" href="images/apple-touch-icon.png"> 
                -->
                <link rel="stylesheet" href="css/main.css">
                <script>window.$ = window.jQuery = WLJQ;</script>
            </head>
            <body style="display: none;" ng-controller="demoController">
                <!--application UI goes here-->
                <div ui-view></div>

                <script src="js/libs/angular.js"></script>
                <script src="js/libs/angular-ui-router.js"></script>

                <script src="js/app.js"></script>

                <script src="js/initOptions.js"></script>
                <script src="js/main.js"></script>
                <script src="js/messages.js"></script>
            </body>
    </html>

在main.js中:

 var PATH = "";
    function wlCommonInit(){
        if (WL.Client.getEnvironment() == WL.Environment.WINDOWS_PHONE_8) {
            PATH = "/www/default/";
        }
        // Common initialization code goes here
        angular.element(document).ready(function() {
            angular.bootstrap(document, ['app']);
        });
    }

 (function() {
        angular.module('app', ['ui.router'])
        // config route
        .config(function($stateProvider) {
            $stateProvider
            .state('home', {
                url: '/home',
                templateUrl: PATH + 'js/templates/home.html'
            });
        })
        // custom directive
        .directive('mHeader', function() {
            return {
                templateUrl: PATH + 'js/templates/header.html'
            };
        })
        // demo controller
        .controller('demoController', function($state) {
            $state.go('home');
        });
    })();

<div m-header></div>
<div>this is home page</div>

<div>this is header</div>

在Visual Studio的Visual Studio输出视图中:

In Visual Studio output view from debug:

'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: DefaultDomain): Loaded 'C:\windows\system32\mscorlib.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\System.Windows.RuntimeHost.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\System.Windows.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\System.Net.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\System.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\System.Xml.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\Data\Programs\{42B9E91D-5EEE-40E2-8162-FDBCC185DADB}\Install\example.DLL'. Symbols loaded.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\Data\Programs\{42B9E91D-5EEE-40E2-8162-FDBCC185DADB}\Install\WLWPNativeLib.DLL'. Cannot find or open the PDB file.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\Data\Programs\{42B9E91D-5EEE-40E2-8162-FDBCC185DADB}\Install\worklight-windowsphone8.DLL'. Cannot find or open the PDB file.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\Microsoft.Phone.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\Microsoft.Phone.Interop.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\System.Runtime.Serialization.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\WinMetadata\Windows.winmd'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\System.Xml.Linq.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\Data\Programs\{42B9E91D-5EEE-40E2-8162-FDBCC185DADB}\Install\WPCordovaClassLib.DLL'. Cannot find or open the PDB file.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\System.Core.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\System.ServiceModel.Web.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\en-US\mscorlib.debug.resources.dll'. Module was built without symbols.
The thread 0xc98 has exited with code 259 (0x103).
An exception of type 'System.NotSupportedException' occurred in Microsoft.Phone.ni.dll and wasn't handled before a managed/native boundary
The thread 0x840 has exited with code 259 (0x103).
The thread 0xa3c has exited with code 259 (0x103).
An exception of type 'System.SystemException' occurred in Microsoft.Phone.Interop.ni.dll and wasn't handled before a managed/native boundary
The thread 0xe34 has exited with code 259 (0x103).
An exception of type 'System.NotSupportedException' occurred in Microsoft.Phone.ni.dll and wasn't handled before a managed/native boundary
The thread 0x904 has exited with code 259 (0x103).
The thread 0xd78 has exited with code 259 (0x103).
The thread 0xd0c has exited with code 259 (0x103).
The thread 0xb08 has exited with code 259 (0x103).
The thread 0x8b0 has exited with code 259 (0x103).
The thread 0xe1c has exited with code 259 (0x103).
An exception of type 'System.Collections.Generic.KeyNotFoundException' occurred in mscorlib.ni.dll and wasn't handled before a managed/native boundary
The thread 0x44c has exited with code 259 (0x103).
The thread 0x460 has exited with code 259 (0x103).
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\Data\Programs\{42B9E91D-5EEE-40E2-8162-FDBCC185DADB}\Install\Newtonsoft.Json.DLL'. Cannot find or open the PDB file.
The thread 0x4b4 has exited with code 259 (0x103).
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\System.Runtime.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\System.Dynamic.Runtime.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\System.Linq.Expressions.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\System.ObjectModel.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\System.IO.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\System.Collections.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\System.Globalization.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'TaskHost.exe' (CLR C:\windows\system32\coreclr.dll: Silverlight AppDomain): Loaded 'C:\windows\system32\System.Runtime.Extensions.ni.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
The thread 0x364 has exited with code 259 (0x103).


推荐答案

Windows Phone上的IE不允许资源注入。在MSApp.execUnsafeLocalFunction()中添加所有分配;解决了大多数jQuery和Angular JS问题。如下所示..

The IE on Windows Phone does not allow resource injection. Adding all assignments within MSApp.execUnsafeLocalFunction(); solves most of the jQuery and Angular JS problems. As shown below..

MSApp.execUnsafeLocalFunction(function () {
    element.innerHTML = value;
});

这篇关于IBM Mobile First Platform(6.3) - Windows Phone 8环境和Angularjs的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆