Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 带有UI路由器的动态嵌套组件视图_Angularjs_Angular Ui Router - Fatal编程技术网

Angularjs 带有UI路由器的动态嵌套组件视图

Angularjs 带有UI路由器的动态嵌套组件视图,angularjs,angular-ui-router,Angularjs,Angular Ui Router,我有一个Angular应用程序,它已经使用UI路由器。它目前使用嵌套视图,就像大多数人使用点表示法一样,即parent.childState 但是,现在很明显,该应用程序的某些部分需要在其他地方重用,让我们将此模块称为A此模块是选项卡式的,当前具有与每个选项卡关联的状态。目前,与大多数UI路由器应用程序一样,路由是在应用程序配置阶段设置的 有了这个新的组件Id,它可以注册自己的路由,并且这些路由是它们所在父视图的子路由 这可能吗?您可以执行以下操作: 在模块a中声明一个提供程序,该提供程序将能够

我有一个Angular应用程序,它已经使用UI路由器。它目前使用嵌套视图,就像大多数人使用点表示法一样,即
parent.childState

但是,现在很明显,该应用程序的某些部分需要在其他地方重用,让我们将此
模块称为A
此模块是选项卡式的,当前具有与每个选项卡关联的状态。目前,与大多数UI路由器应用程序一样,路由是在应用程序配置阶段设置的

有了这个新的组件Id,它可以注册自己的路由,并且这些路由是它们所在父视图的子路由


这可能吗?

您可以执行以下操作:

模块a中声明一个提供程序,该提供程序将能够注册要插入模块的应用程序的所有组件。其中一个参数显然是状态前缀。此提供程序将在内部调用$stateProvider,无论是在调用提供程序的函数时,还是在实例化与提供程序匹配的服务时(即$get)

如果选择$get函数,则需要添加angular.run()以强制实例化$get函数产生的服务。否则,稍后将调用$get,并且不会映射状态,从而导致$stateNotFound。如果您希望能够在调用$stateProvider之前重载某些配置,则此选项非常有用。如果不需要,请不要在$get函数中使用$stateProvider


因此,现在您在“其他人”模块中所要做的就是依赖模块a并使用所述提供者。

选中此项,您可能能够将此问题解决方案映射到您的问题@