知道angularjs使用哪种语法

时间:2016-08-26 08:58:41

标签: angularjs

首先这是我的devDependencies

 "angular": "^1.5.0",
    "angular-ui-router": "^1.0.0-beta.1",

我想开发angularjs版本,它使用组件和控制器作为类和路由我不知道使用哪种语法

我需要知道我的依赖项与特定语法的路由兼容,如果有人可以给我一个路由的例子

import uiRouter from 'angular-ui-router';

angular.module('app', [
  uiRouter
])
  .config(($stateProvider, $urlRouterProvider)=> {
    "ngInject";
    $urlRouterProvider.otherwise('/');
    $stateProvider
      .state('login', {
        url: '/',
        component: 'login'
      });
    $stateProvider
      .state('home', {
        url: '/home',
        component: 'home'
      });
  })

但是当我尝试在我的控制器中使用$ state.go('home')时出错 谢谢你的帮助

更新

的LoginController

class LoginController {
  constructor() {
    this.name = 'login';
    console.log('login controller');
  }
  openHome(){
    console.log("uo");
    $state.go('home');
  }
}

export default LoginController;

login.js

import LoginComponent from './login.component'
import angular from 'angular';
import uiRouter from 'angular-ui-router';

angular.module('login',[
  uiRouter

])
  .config(($stateProvider, $urlRouterProvider)=> {
    "ngInject";
  })
.component('login',LoginComponent);

在构造函数中添加$ scope和$ state

enter image description here

1 个答案:

答案 0 :(得分:0)

问题来自您的控制器。试试这个:

LoginController:

'use strict';
(function(){

class LoginController {
  constructor($state) {

this.openHome = function(){
    console.log("uo");
    $state.go('home');
  }

}

angular.module('app')
  .component('login', {
    templateUrl: 'your/location/toMyFile.html',
    controller: LoginComponent
  });

})();

希望它有所帮助;)