小编snu*_*les的帖子

AngularJS选择ng-change功能未找到所选模型

我遇到了一些基本的角度数据绑定问题.

我的看法:

<select
    ng-model="selectedPerson"
    ng-options="person.name for person in testdataset"
    ng-change="personChanged(selectedPerson)">
    <option value="">All Persons</option>
</select>
Run Code Online (Sandbox Code Playgroud)

我的控制器:

$scope.testdataset = [
    {name:"bill"},
    {name:"bob"},
    {name:"batman"}
];
$scope.personChanged = function(person) {
    console.log(person);
}
Run Code Online (Sandbox Code Playgroud)

这很好用 - 记录选定的名称.

但是,当选择名称时,这只是打印"未定义"

视图:

<select
    ng-model="selectedPerson"
    ng-options="person.name for person in testdataset"
    ng-change="personChanged()">
    <option value="">All Persons</option>
</select>
Run Code Online (Sandbox Code Playgroud)

控制器:

$scope.testdataset = [
    {name:"bill"},
    {name:"bob"},
    {name:"batman"}
];
$scope.personChanged = function() {
    console.log($scope.selectedPerson);
}
Run Code Online (Sandbox Code Playgroud)

我很有棱角,我只是感到困惑.我假设它与函数内部的$ scope的"范围"有关,但我不确定如何排除故障......

javascript angularjs

6
推荐指数
1
解决办法
1万
查看次数

apache mod_rewrite不能使用.htaccess文件

好吧,我一直遇到一些关于aws或者某些东西的问题,这样我似乎无法让mod_rewrite工作.

仅出于测试目的,我已完成以下操作:

1使用aws控制台从向导部署新的ami 64位实例

2 yum安装了apache

3编辑/etc/httpd/conf/httpd.conf:这样

<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
Run Code Online (Sandbox Code Playgroud)

好像

<Directory />
    Options FollowSymLinks
    AllowOverride All
</Directory>
Run Code Online (Sandbox Code Playgroud)

4确保

LoadModule rewrite_module modules/mod_rewrite.so
Run Code Online (Sandbox Code Playgroud)

在文件中并取消注释.

5重启apache:

 sudo /sbin/service httpd restart
Run Code Online (Sandbox Code Playgroud)

6创建了两个新文件:

/var/www/html/test1.html
Run Code Online (Sandbox Code Playgroud)

包含:

this is test1!

/var/www/html/test2.html
Run Code Online (Sandbox Code Playgroud)

包含:

this is test2!
Run Code Online (Sandbox Code Playgroud)

7创建文件:

/var/www/html/.htaccess
Run Code Online (Sandbox Code Playgroud)

包含(IN TOTAL):

RewriteEngine on
RewriteRule ^test1\.html$ test2.html [L]
Run Code Online (Sandbox Code Playgroud)

8去了:

http://[my aws server]/test1.html
Run Code Online (Sandbox Code Playgroud)

我得到"这是测试1!"

我在这里做错了,但对于我的生活,我不知道是什么.任何帮助是极大的赞赏...

编辑:我在我的.htaccess文件的开头添加了无意义的字符/数字,并重新启动了apache(不是100%确定需要,但嘿......),什么都没发生.换句话说,我预计转到url [aws server] /test1.html会导致某种错误,但事实并非如此.我怀疑apache甚至没有读取.htaccess文件.

编辑:我在httpd.conf文件中添加了以下内容:

RewriteLog "/tmp/rewrite.log"
RewriteLogLevel 9
Run Code Online (Sandbox Code Playgroud)

当我重新启动apache时会创建该文件,但是当我进入我设置的任一页面时,都没有任何内容.我没有在这里做一些非常非常基本的事情,但我不确定是什么......

linux .htaccess mod-rewrite amazon-web-services

5
推荐指数
1
解决办法
3万
查看次数