如何使用angular.js设置电子应用程序?

时间:2019-06-26 16:44:54

标签: angularjs electron ngroute

我正在尝试使用angular.js创建电子应用程序,但是以某种方式,我无法使其进入默认视图,所有其他视图均正常运行,但是当我的路径为“ /”时,它将始终将我发送至otherwise部分。

我都尝试过 $locationProvider.html5Mode({enabled: true, requireBase: false});$locationProvider.html5Mode({enabled: true, requireBase: true});<base href="/">,  除我的“ /”路由外,其他所有路由都有效。当我在浏览器中尝试同样的方法时,它就像是一种魅力。

考虑到我尚未完成我的“注册”部分,我进行了设置,当单击该按钮时,它会将您发送到“ /”,并且它也可以工作。唯一不起作用的是当您第一次输入“ /”路线时。

有人可以解释我在做什么错吗?

这是我的“ index.html”:

<head>
    <title>DEMO APP MINZE</title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
    <link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,600,700&display=swap" rel="stylesheet"/>
    <link rel="stylesheet" href="css/main.css">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
    <script src="js/scripts.js"></script>
    <script src="views/templates.js"></script>
<!--    <base href="/">-->
</head>
<ul>    
    <li><a href="/#/login" class="login">Login</a</li>
    <li><a href="/#/" class="register">Register</a></li>    
</ul>

这是我的电子部分:

function createMainWindow() {

    win = new BrowserWindow({
        width: 800, height: 600, show: true, webPreferences: {
            preload: path.join(__dirname, 'preload.js'),
            nodeIntegration: false
            //contextIsolation: true,
        }
    })
    win.loadURL(url.format({
        pathname: path.join(__dirname, './dist/index.html'),
        protocol: 'file',
        slashes: true
    }));
};

function createWindows() {
    createMainWindow();
    //createChildWidnow();
}

app.on('ready', () => {

    createWindows();
    //win.webContents.openDevTools();
    win.on('closed', () => {
        console.log('cao cao');
        win = null;
    })
});

这是我的角度路由:

angular.module('templates', [
    'ngRoute',
    'app'
])
.config(($routeProvider,$locationProvider)=>{
    $locationProvider.hashPrefix("");
    $routeProvider
        .when('/',{
            templateUrl : "welcome.html"
        })
        .when('/login',{
            templateUrl : "login.html",
            controller : "loginCtrl"
        })
        .when('/success',{
            templateUrl: 'success.html',
            controller: "successCtrl"
        })
        .otherwise({
            template : "<h1>Error 404 !!!</h1>"
        });
    $locationProvider.html5Mode({enabled: true, requireBase: false});
});


0 个答案:

没有答案