在 运行 时间更改 angularjs 嵌套模板
change an angularjs nested template at run time
我有一个模板嵌套在另一个模板中,我想在单击按钮时加载该模板。
所以嵌套模板是动态加载的。这是我到目前为止所做的。
这是主要的 body.html(当浏览器中提供 url 时加载,例如 http://url#/newtemplate)
<div ui-view> </div>
为简洁起见,已删除代码的其他部分
这是我希望在单击按钮时显示的 new_template.html。
当我像下面这样直接输入模板名称时,即当我硬编码时
<div ui-view="number1"></div>
它完全加载了模板。
这是动态模型
<button ng-model="template_name" ng-value="number1">Button1</button>
<div ui-view="{{template_name}}"></div>
{{template_name}}
上面没有按我的预期加载模板。但它显示字符串 number1 时
按钮被点击
我该怎么做才能加载模板....
这是我的控制器
.state('parent',{
url: '/newtemplate',
views:{
'':{
templateUrl: "parent.tpl",
contoller:"controller",
},
'number1@parent':{
templateUrl:"number1.tpl",
contoller:"formcontroller"
},
'number2@parent':{
templateUrl:"number2.tpl",
contoller:"formcontroller"
},
'number3@parent':{
templateUrl:"number3.tpl",
contoller:"formcontroller"
}
}
})
奇怪的是,当我使用点符号时它不起作用,所以我必须使用绝对命名方法。
我还注意到,当我添加如上所示的嵌套视图时,加载模板所需的时间需要很长时间。
如果有任何帮助可以让我在运行时加载嵌套视图(可能非常快),我将不胜感激
期待更多答案
我还是希望可以使用ui-view/ui-router因为可以使用controller
我不确定您是否可以使用 uiView 动态加载 html。
我会尝试其他可能的解决方案:
- 使用指令
- 使用 ngInclude
我会给你一个 ngInclude 的例子:https://next.plnkr.co/edit/M5hl71mXdAGth2TE?open=lib%2Fscript.js&deferRun=1&preview
我有一个模板嵌套在另一个模板中,我想在单击按钮时加载该模板。 所以嵌套模板是动态加载的。这是我到目前为止所做的。
这是主要的 body.html(当浏览器中提供 url 时加载,例如 http://url#/newtemplate)
<div ui-view> </div>
为简洁起见,已删除代码的其他部分
这是我希望在单击按钮时显示的 new_template.html。
当我像下面这样直接输入模板名称时,即当我硬编码时
<div ui-view="number1"></div>
它完全加载了模板。
这是动态模型
<button ng-model="template_name" ng-value="number1">Button1</button>
<div ui-view="{{template_name}}"></div>
{{template_name}}
上面没有按我的预期加载模板。但它显示字符串 number1 时 按钮被点击
我该怎么做才能加载模板....
这是我的控制器
.state('parent',{
url: '/newtemplate',
views:{
'':{
templateUrl: "parent.tpl",
contoller:"controller",
},
'number1@parent':{
templateUrl:"number1.tpl",
contoller:"formcontroller"
},
'number2@parent':{
templateUrl:"number2.tpl",
contoller:"formcontroller"
},
'number3@parent':{
templateUrl:"number3.tpl",
contoller:"formcontroller"
}
}
})
奇怪的是,当我使用点符号时它不起作用,所以我必须使用绝对命名方法。 我还注意到,当我添加如上所示的嵌套视图时,加载模板所需的时间需要很长时间。
如果有任何帮助可以让我在运行时加载嵌套视图(可能非常快),我将不胜感激
期待更多答案
我还是希望可以使用ui-view/ui-router因为可以使用controller
我不确定您是否可以使用 uiView 动态加载 html。 我会尝试其他可能的解决方案:
- 使用指令
- 使用 ngInclude
我会给你一个 ngInclude 的例子:https://next.plnkr.co/edit/M5hl71mXdAGth2TE?open=lib%2Fscript.js&deferRun=1&preview