2016-02-20 56 views
0

我需要用PHP數組值填充一些打字稿數組。下面是我如何做到這一點:在打字稿文件中的PHP

的index.php

相關部分:

<? 
    require 'scripts/back_end/database_connection.php'; 
    require 'scripts/back_end/get_countries.php'; 
    require 'scripts/back_end/views/select.php'; 
    require 'scripts/back_end/views/view.php'; 

    $conn->close(); 
?> 

<script type="text/javascript"> 
    var allCountries = <? echo json_encode($allCountries, JSON_PRETTY_PRINT) ?>; 
</script> 

我更喜歡把var allCountries =添加JavaScript行這個函數中我的打字稿文件像這樣:

$(document).ready(function() { 
    var allCountries = <? echo json_encode($allCountries, JSON_PRETTY_PRINT) ?>; 
    var _searchFilterViewModel: SearchFilterViewModel = new SearchFilterViewModel(allCountries, allCategories); 
    var _searchFilterForm = $("#find-vegan-products-page").find("form")[0]; 
    ko.applyBindings(_searchFilterViewModel, _searchFilterForm); 
); 

但是PHP標籤只能在JavaScript文件中識別。有沒有辦法讓php在打字稿文件中被識別?

+2

建議編輯 - 爲什麼修改我的問題包含我不使用的代碼?如果你認爲我應該使用新的代碼,那麼建議在答案或評論中說明原因。 – BeniaminoBaggins

+0

你是完全正確的。請注意,建議的審覈必須由更多的用戶批准。我認爲編輯會被拒絕。另外請注意,我已經批准了錯誤的編輯(但我是唯一一個編輯者):我已經尋找了一種方法來解開它,但是沒有,我很抱歉。如果編輯將被批准,我會將其恢復爲原始文章。我非常抱歉。 – fusion3k

回答

0

不應該可以在TypeScript文件中插入PHP,因爲這些文件需要被編譯,並且PHP內容不是有效的TypeScript代碼。

您可以隨時輸出,即使有通過設置--noEmitOnError爲false編譯錯誤,但不建議..