当前位置: 代码迷 >> JavaScript >> 我的控制器中的作用域变量无法正常工作ng-include的src
  详细解决方案

我的控制器中的作用域变量无法正常工作ng-include的src

热度:100   发布时间:2023-06-13 12:10:49.0

我试图通过将$ scope变量放在'src'标签中来动态加载ng-include。 这是我的代码:

在控制器中:

app.controller('myController', function($scope) {
    $scope.requests = {
        "0": { url: '/tpl-first-request.html' },
        "1": { url: '/tpl-second-request.html' }
    };

    $scope.getRequest = getRequest;

    function getRequest(request) {
        $scope.request = $scope.requests[request].url;
    }
});

在html中:

<body ng-controller="myController">
    <button ng-click="getRequest(0)">Click first one</button>
    <button ng-click="getRequest(1)">Click second one</button>
    <p ng-if="request">Request = {{request}}</p>
    <div ng-include src="request"></div>
</body>

ng-include无效,但是“ Request = {{request}}”的打印输出正常。.您可以在此对其进行测试

request路径中删除斜杠。

  $scope.requests = {
    "0": { url: 'tpl-first-request.html' },
    "1": { url: 'tpl-second-request.html' }
  };

这样做,至少在我的 。

这是一个很麻烦的问题,您使用的是模板的绝对URL而不是亲戚的URL:

  $scope.requests = {
    "0": { url: 'tpl-first-request.html' },
    "1": { url: 'tpl-second-request.html' }
  };

正在工作的朋克: ://plnkr.co/edit/iTZJ64YyyxqbQyC1bOKS?p=preview

  相关解决方案