Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.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
Javascript ng首次单击后单击不工作(嵌入指令)_Javascript_Html_Angularjs_Angularjs Directive - Fatal编程技术网

Javascript ng首次单击后单击不工作(嵌入指令)

Javascript ng首次单击后单击不工作(嵌入指令),javascript,html,angularjs,angularjs-directive,Javascript,Html,Angularjs,Angularjs Directive,我有一个按钮和ng点击问题。我有一个输入和一个带有ng的按钮,点击时会生成3个随机单词。我在指令生成的div中显示这些单词 我遇到的问题是,当我第一次单击该按钮时,代码运行正常,但当我再次单击时,该按钮没有任何作用,我必须实现一个清除按钮,清除$scopes,然后生成按钮再次工作 这是我的按钮的代码: <button class="btn btn-default" type="button" ng-click='generateRandom()'>Generate</butto

我有一个按钮和ng点击问题。我有一个输入和一个带有ng的按钮,点击时会生成3个随机单词。我在指令生成的div中显示这些单词

我遇到的问题是,当我第一次单击该按钮时,代码运行正常,但当我再次单击时,该按钮没有任何作用,我必须实现一个清除按钮,清除$scopes,然后生成按钮再次工作

这是我的按钮的代码:

<button class="btn btn-default" type="button" ng-click='generateRandom()'>Generate</button>
我尝试清除函数中的$scopes,但在第一次ng单击之后,该函数甚至没有被调用。嵌入指令是否会影响ng点击

有什么帮助吗?我不希望每次我想要生成单词时都单击“清除”,我希望他们能够每次单击“生成”并获取随机单词

提前谢谢你


更新:以下是问题的解决方案:

我解决了问题,我有两个功能:

$scope.generateRandom = function() {
  var temp = '';
  Words.getWords($scope.number)
  .then(function(response) {
    for (var i = 0; i < response.data.length; i++) {
      temp += ' ' +  response.data[i].word
    }

    $scope.camel = temp;
    $scope.kebab = temp;
    $scope.snake = temp;
  });
};

$scope.clear = function() {
  $scope.camel = '';
  $scope.kebab = '';
  $scope.snake = '';
};
$scope.generateRandom=function(){
var temp=“”;
Words.getWords($scope.number)
.然后(功能(响应){
对于(var i=0;i

我所要做的就是在
$scope.clear()
函数的末尾添加
$scope.generateradom
函数,它就做到了。

你能提供一个plnkr/fiddle/pen吗?@Manube我在问题中添加了一个plnkr,谢谢。@Manube我现在不能,它说我只能在18小时内接受它。
$scope.generateRandom = function() {
  var temp = '';
  Words.getWords($scope.number)
  .then(function(response) {
    console.log(response);
    response.data.forEach(function(e) {
      console.log(e);
      temp += ' ' + e.word;
    });

    $scope.camel = lodash.camelCase(temp);
    $scope.kebab = lodash.kebabCase(temp);
    $scope.snake = lodash.snakeCase(temp);
  });
};
$scope.generateRandom = function() {
  var temp = '';
  Words.getWords($scope.number)
  .then(function(response) {
    for (var i = 0; i < response.data.length; i++) {
      temp += ' ' +  response.data[i].word
    }

    $scope.camel = temp;
    $scope.kebab = temp;
    $scope.snake = temp;
  });
};

$scope.clear = function() {
  $scope.camel = '';
  $scope.kebab = '';
  $scope.snake = '';
};