我仔细阅读了关于该主题的AngularJS文档,然后使用指令进行了调整.这是小提琴.
以下是一些相关的片段:
来自HTML:
<pane bi-title="title" title="{{title}}">{{text}}</pane>
Run Code Online (Sandbox Code Playgroud)从窗格指令:
scope: { biTitle: '=', title: '@', bar: '=' },
Run Code Online (Sandbox Code Playgroud)我有几件事没有得到:
"{{title}}"与'@'和"title"使用'='?我找到了另一个显示表达式解决方案的小提琴:http://jsfiddle.net/maxisam/QrCXh/
angularjs angularjs-directive angularjs-scope isolated-scope
在AngularJS中设置焦点到输入字段的"角度方式"是什么?
更具体的要求:
<input>此模态中.<input>变得可见(例如,通过单击某个按钮),将焦点设置在它上面.我试图达到第一个要求有autofocus,但只有当模态被打开的第一次,只有在特定的浏览器(如Firefox中这是行不通的)这个作品.
任何帮助将不胜感激.
创建指令时,可以将代码放入编译器,链接函数或控制器中.
在文档中,他们解释说:
但是,对我而言,目前尚不清楚哪种代码应该去哪里.
例如:我可以在编译中创建函数并将它们附加到链接中的作用域,还是仅将函数附加到控制器中的作用域?
如果每个指令都有自己的控制器,控制器如何在指令之间共享?控制器是真的共享还是只是范围属性?
我理解ng-show并ng-hide影响元素上的类集,并ng-if控制元素是否作为DOM的一部分呈现.
有没有对选择的准则ng-if在ng-show/ ng-hide或反之亦然?
在编写Angular指令时,可以使用以下任何函数来操作声明指令的元素的DOM行为,内容和外观:
对于应该使用哪种功能似乎存在一些混淆.这个问题包括:
我想在下面的文本框中捕获回车键按下事件.为了更清楚,我使用a ng-repeat来填充tbody.这是HTML:
<td><input type="number" id="closeqty{{$index}}" class="pagination-right closefield"
data-ng-model="closeqtymodel" data-ng-change="change($index)" required placeholder="{{item.closeMeasure}}" /></td>
Run Code Online (Sandbox Code Playgroud)
这是我的模块:
angular.module('components', ['ngResource']);
Run Code Online (Sandbox Code Playgroud)
我正在使用资源填充表,我的控制器代码是:
function Ajaxy($scope, $resource) {
//controller which has resource to populate the table
}
Run Code Online (Sandbox Code Playgroud) 我正在寻找任何方式访问指令中的"父"范围.范围,转换,要求的任何组合,从上面传递变量(或范围本身)等.我完全愿意向后弯腰,但我想避免一些完全hacky或不可维护的东西.例如,我知道我现在可以通过$scope从preLink参数中获取并迭代它的$sibling范围来找到概念性的"父".
我真正想要的是能够$watch在父范围内表达.如果我能做到这一点,那么我可以完成我在这里要做的事情:
AngularJS - 如何使用变量渲染部分?
重要的一点是,该指令必须可以在同一父范围内重复使用.因此默认行为(范围:false)对我不起作用.我需要每个指令实例的单独范围,然后我需要$watch一个存在于父范围内的变量.
代码示例值1000个单词,因此:
app.directive('watchingMyParentScope', function() {
return {
require: /* ? */,
scope: /* ? */,
transclude: /* ? */,
controller: /* ? */,
compile: function(el,attr,trans) {
// Can I get the $parent from the transclusion function somehow?
return {
pre: function($s, $e, $a, parentControl) {
// Can I get the $parent from the parent controller?
// By setting this.$scope = $scope from within that controller?
// …Run Code Online (Sandbox Code Playgroud) 如果我在引导程序中有一个带有项目的导航栏
Home | About | Contact
Run Code Online (Sandbox Code Playgroud)
如何为每个菜单项激活时设置活动类?也就是说,如何设置class="active"角度路径的时间
#/ 为了家#/about 对于关于页面#/contact 对于联系页面javascript navbar twitter-bootstrap angularjs angularjs-directive
我有一个指令,这里是代码:
.directive('map', function() {
return {
restrict: 'E',
replace: true,
template: '<div></div>',
link: function($scope, element, attrs) {
var center = new google.maps.LatLng(50.1, 14.4);
$scope.map_options = {
zoom: 14,
center: center,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
// create map
var map = new google.maps.Map(document.getElementById(attrs.id), $scope.map_options);
var dirService= new google.maps.DirectionsService();
var dirRenderer= new google.maps.DirectionsRenderer()
var showDirections = function(dirResult, dirStatus) {
if (dirStatus != google.maps.DirectionsStatus.OK) {
alert('Directions failed: ' + dirStatus);
return;
}
// Show directions
dirRenderer.setMap(map);
//$scope.dirRenderer.setPanel(Demo.dirContainer);
dirRenderer.setDirections(dirResult);
};
// Watch
var updateMap = …Run Code Online (Sandbox Code Playgroud) 我需要能够根据范围内的布尔变量向元素添加"contenteditable".
使用示例:
<h1 attrs="{'contenteditable=\"true\"': editMode}">{{content.title}}</h1>
Run Code Online (Sandbox Code Playgroud)
如果$scope.editMode设置为,则会导致将contenteditable = true添加到元素中true.有没有一些简单的方法来实现这样的ng-class属性行为?我正在考虑写一个指令并分享,如果没有.
编辑: 我可以看到我提出的attrs指令和ng-bind-attrs之间似乎有一些相似之处,但它在1.0.0.rc3中删除了,为什么会这样呢?