Helpex - Trao đổi & giúp đỡ Đăng nhập
4

Tôi nhận được trạng thái 404 từ Chrome khi tôi đang cố gắng chạy một dự án cục bộ bằng cách sử dụng angle. Tôi không chắc vấn đề nằm ở đâu và tôi đã thử các câu trả lời được đề xuất cho các câu hỏi tương tự.

Đây là tệp chỉ thị của tôi:

'use strict';

/**
 * @ngdoc directive
 * @name stockDogApp.directive:stkWatchlistPanel
 * @description
 * # stkWatchlistPanel
 */
angular.module('stockDogApp')
  .directive('stkWatchlistPanel', function ($location, $modal, WatchlistService) {
    return {
      templateUrl: 'views/templates/watchlist-panel.html',
      restrict: 'E',
      scope : {},
      link: function($scope){
        $scope.watchlist = {};
        var addListModal = $modal({
          scope : $scope,
          template: 'views/templates/addlist-modal.html',
          show : false

        });

        $scope.watchlists = WatchlistService.query();

        $scope.showModal = function(){
          addListModal.$promise.then(addListModal.show);
        };
        $scope.createList = function(){
          WatchlistService.save($scope.watchlist);
          addListModal.hide();
          $scope.watchlist = {};
        };
        $scope.deleteList = function(list){
          WatchlistService.remove(list);
          $location.path('/');
        };
      }
    };
  });

Đây là chế độ xem dạng cây của thư mục 'ứng dụng' của tôi

|-- 404.html
|-- favicon.ico
|-- images
|   `-- yeoman.png
|-- index.html
|-- robots.txt
|-- scripts
|   |-- app.js
|   |-- controllers
|   |-- directives
|   |   `-- stk-watchlist-panel.js
|   `-- services
|       `-- watchlist-service.js
|-- styles
|   `-- main.css
`-- views
    `-- templates
        |-- addlist-modal.html
        `-- watchlist‐panel.html

Tôi gặp lỗi không tìm thấy trang khi tải index.html trong bảng điều khiển của mình.

Error: [$compile:tpload] Failed to load template: views/templates/watchlist-panel.html (HTTP status: 404 Not Found)
http://errors.angularjs.org/1.4.4/$compile/tpload?p0=views%2Ftemplates%2Fwatchlist-panel.html&p1=404&p2=Not%20Found

Tôi cũng đã thử nhập đường dẫn đầy đủ từ thư mục gốc nhưng nó vẫn không phát hiện ra trang.

Tôi không chắc đây có phải là nguyên nhân hay không, nhưng xem xét các công cụ dành cho nhà phát triển chrome cho thấy rằng tab nguồn không có thư mục ứng dụng trong đó (nó chỉ hiển thị 'bower_components', 'scripts', 'styles' và index.html

**cập nhật **

có vẻ như thư mục duy nhất mà góc cạnh không thể nhìn thấy là thư mục chế độ xem trong ứng dụng. Tôi không chắc vấn đề nằm ở đâu. Có thể có vấn đề với càu nhàu?

ngtemplates: {
  dist: {
    options: {
      module: 'stockDogApp',
      htmlmin: '<%= htmlmin.dist.options %>',
      usemin: 'scripts/scripts.js'
    },
    cwd: '<%= yeoman.app %>',
    src: 'views/{,*/}*.html',
    dest: '.tmp/templateCache.js'
  }
},
4 hữu ích 5 bình luận 11k xem chia sẻ
2

Tôi đoán đó là vì bạn đã viết template: 'views/templates/addlist-modal.html'thay vìtemplateUrl: 'views/templates/addlist-modal.html'

2 hữu ích 0 bình luận chia sẻ
1
Error: [$compile:tpload] Failed to load template: xyz.html (HTTP status: 404 Not Found)

có thể do cài đặt bên dưới trong web.config

 <system.webServer>
    <handlers>
      <remove name="BlockViewHandler"/>
      <add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />

Điều này gây ra chặn bất kỳ yêu cầu trực tiếp nào đến tệp trong thư mục Views. Yêu cầu xhr góc tới tệp này bị chặn bởi điều này.

Bình luận nó ra và xem nếu mọi thứ hoạt động. Sử dụng điều này một cách thận trọng vì nó cho phép truy cập vào các tệp của bạn.

1 hữu ích 0 bình luận chia sẻ
0

Tôi vừa dán chỉ thị của bạn vào ứng dụng đang hoạt động của mình và nó chạy tốt. Bạn có dừng lại và bắt đầu càu nhàu không? Lưu ý ở trang 16 có thể giải thích lý do tại sao thư mục không được chọn động.

0 hữu ích 0 bình luận chia sẻ
0

Đến bữa tiệc muộn, nhưng có thể hữu ích cho một số người.
Trong trường hợp của tôi, đó là do sự khác biệt về cách viết hoa chữ cái trong url của chỉ thị và $ templateCache:
Đường dẫn trong chỉ thị:

templateUrl: 'somedirectory/somefile.html'

Đường dẫn trong $ templateCache:

$templateCache.put('someDirectory/somefile.html', 'html template here...');

HTH ai đó.

0 hữu ích 0 bình luận chia sẻ
loading
Không tìm thấy câu trả lời bạn tìm kiếm? Duyệt qua các câu hỏi được gắn thẻ javascript angularjs gruntjs bower , hoặc hỏi câu hỏi của bạn.

Có thể bạn quan tâm

loading