2017-05-16 61 views
0

我有一個在angular-js中開發的單頁面應用程序,我需要在新網址下打開一個打印頁面。目前,printtext.html加載它的內容,但在index.html的內部。我想要的是隻加載printtext.html的內容,而不需要index.html中的任何內容。基本上,如果我點擊我的index.html中的鏈接,我只想在瀏覽器中看到文本printtext。而不是像Some headertext這是事情的情況。這是可能的還是我打破SPA規則?我的主要目標是創建一個PrintSite,在那裏我只看到沒有任何頁眉或頁腳信息的內容。還是應該用戶隱藏呢? 我不包括這裏的邏輯,但如果需要將提供。以角度打開一個新網站

的index.html

<!DOCTYPE html> 
<html ng-app="myapp"> 
<head> 
    <meta http-equiv="content-type" content="text/html; charset=UTF-8"> 
    <meta charset="utf-8"> 
    <title>Myapp</title> 
    <script src="libs/js/angular.js"></script> 
    <script src="libs/js/angular-route.js"></script> 
    <script src="js/app.js"></script> 
</head> 

    <body> 
    <h1> Some headertext </h1> 
    <ng-view></ng-view>  
    </body> 

app.js

var app = angular.module('myapp', ['ngRoute']) 
    .config(['$routeProvider', function($routeProvider) { 
     $routeProvider 
      .when('/text', { 
       templateUrl: "template/text.html" 
      }) 
      .when('/print', { //actually the parameter is /print/:object but i left the logic out here 
       templateUrl: "Print/printtext.html" 
      }) 
    }]) 

text.html

<p> Some text </p> 

<a ng-href="#!/print">Print </a> <!-- The right link would be something like #!/print/marc --> 

printtext.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html ng-app="myapp"> 
<head><title> 
    Printview 
</title> 

    <script src="../libs/js/angular.js"></script> 
    <script src="../libs/js/angular-route.js"></script> 

    <script src="../js/app.js"></script> 
<body> 

     <p>printtext</p> 

</body> 
</html> 

回答

1

您直接在您的錨標記中使用target = "_blank"

<p> Some text </p> 

    <a ng-href="#!/print" target="_blank">Print </a> <!-- The right link would be something like #!/print/marc --> 

否則,您可以創建一個角度動態自定義指令。自定義指令一般用於根據動態條件設置目標。

<p> Some text </p> 

<a ng-href="#!/print" ng-attr-target="_blank">Print </a> <!-- The right link would be something like #!/print/marc --> 

<a ng-attr-target="_blank"> 
    ... 
</a> 

NG-ATTR-XYZ,您可以動態創建@xyz,如果值是不確定的,不會創建任何屬性。

+0

對我來說,它打開了一個新的網站,但結果相同。但是我會檢查我是否可以用ng-attr-target屬性做一些事情。 – member2

+0

'在新的url上加載printsite?'你想在新標籤上或者在同一頁面下載入printsite頁面。 – eigenharsha

+0

我更新了我的問題,希望它現在可以理解。 – member2