我对laravel和angular js很新。我想要做的是显示内部值为placeholder
的范围,并且当用户输入任何值时将有输入字段,而不是该占位符,将在那里写入文本字段的新值。
<!DOCTYPE html>
<html>
<head>
<script data-require="angular.js@1.2.0-rc2" data-semver="1.2.0-rc2" src="http://code.angularjs.org/1.2.0-rc.2/angular.js"></script>
<link rel="stylesheet" href="style.css" />
<script src="script.js"></script>
<script>
function Controller($scope) {
$scope.data = {
company_name : ''
};
$scope.isEmptyCompany = function () {
return company_name === '';
}
}
</script>
</head>
<body>
<div ng-app ng-controller="Controller">
<input type="text" ng-model="data.company_name"/>
<div class="company_name">
<h1 class="left">
<span ng-if="data.company_name === ''">
Placeholder
</span>
<span ng-if="data.company_name!==''">
{{data.company_name}}
</span>
</h1>
</div>
</div>
</body>
</html>
显示此错误我不知道为什么会发生
Use of undefined constant data - assumed 'data' (View: C:\xampp\htdocs\laravel\app\views\user\user_admin_info.blade.php)
答案 0 :(得分:2)
一种解决方案是在花括号之前加上@
符号,如@Ben所述。但是当使用angular(恕我直言)时,我认为最好只使用.php
个视图而不是.blade.php
个视图,否则你必须在视图中包含@。其次,在角度特定的视图中,并不总是存在大量的服务器端模板。即使我们需要一些东西,我们也可以使用php的原生<?php ?>
模板。
答案 1 :(得分:1)
Laravel正在处理您的{{ tag }}
而不是Angular。你需要告诉Laravel忽略你的Angular标签:
@{{data.company_name}}
有关详细信息,请参阅Displaying Data下的“Blade&amp; JavaScript框架”。