在我的 Angular-12 应用程序中,我尝试使用以下命令生成服务:
ng gs 身份验证/服务/登录
但我得到了这个错误:
ng : File C:\Users\akweey\AppData\Roaming\npm\ng.ps1 cannot be loaded because running scripts is disabled on this system. For more
information, see about_Execution_Policies at https:/go.microsoft.com/fwlink/?LinkID=135170.
At line:1 char:1
+ ng g s auth/services/login
+ ~~
+ CategoryInfo : SecurityError: (:) [], PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess
Run Code Online (Sandbox Code Playgroud)
当我检查路径:C:\Users\akweey\AppData\Roaming\npm\ng.ps1时,
我只找到了 ng 但没有找到 ng.ps1
我该如何解决这个问题?
谢谢
如果我的问题听起来很愚蠢,我感到非常抱歉。我是 Laravel 的新手。我在 Laravel 中开发了一些 API 以在 Angular 中使用,但对于在 POSTMAN 中输入什么来测试 API 有点困惑。项目名称是“ ntiapi ”
我已经在Controller中编写了API。另外,我已经在路由中完成了 api.php
api.php
Route::post('/register', 'AuthController@register');
Route::post('/login', 'AuthController@login');
Route::post('/logout', 'AuthController@logout');
Route::get('/tasks', 'TaskController@index')->name('tasks.index');
Route::post('/tasks', 'TaskController@store')->name('tasks.store');
Route::get('/tasks/{task}', 'TaskController@show')->name('tasks.show');
Route::put('/tasks/{task}', 'TaskController@update')->name('tasks.update');
Route::delete('/tasks/{task}', 'TaskController@destroy')->name('tasks.destroy');
Route::middleware('auth:api')->get('/user', function (Request $request) {
return $request->user();
});
Run Code Online (Sandbox Code Playgroud)
我有这个http://localhost:ntiapi/api/
如何添加每个路由http://localhost:ntiapi/api/
以测试 POSTMAN 上的 api。我的意思是完整的网址。例如http://localhost:ntiapi/api/login。
我开发了一个带有 Laravel 后端的 Angular 7 应用程序。在尝试为生产构建和部署时,我遇到了一个错误。
src/app/services/user.service.ts(10,32): 错误 TS2339: 属性 'apiUrl' 不存在于类型 '{ production: boolean; }'。
在 angular cli 上,我运行了这个:
ng build --prod
环境.ts
export const environment = {
production: false,
apiUrl: 'http://example.com/api',
};
Run Code Online (Sandbox Code Playgroud)
用户服务.ts
import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { environment } from 'src/environments/environment';
@Injectable({
providedIn: 'root'
})
export class UserService {
private API_URL= environment.apiUrl;
constructor(private http: HttpClient) { }
login(email, password) {
const obj = {
email: email,
password: password …Run Code Online (Sandbox Code Playgroud) 我将 Laravel-Passport 用于我的 api 端点的 Laravel 5.8 身份验证
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use App\User;
use Validator;
public function login(Request $request)
{
$validator = Validator::make($request->all('email', 'password'), [
'email' => 'required|string|email|max:255',
'password' => 'required|string|min:6'
]);
if ($validator->fails()) {
return response()->json(['error'=>$validator->errors()], 401);
};
if(Auth::attempt(['email' => request('email'), 'password' => request('password')])){
$user = Auth::user();
$success['token'] = $user->createToken('MyApp')-> accessToken;
return response()->json(['success' => $success], 200);
}
else{
return response()->json(['error'=>'Can not log in with the data provide.'], 401);
}
}
Run Code Online (Sandbox Code Playgroud)
身份验证文件
'guards' => [
'web' …Run Code Online (Sandbox Code Playgroud) 在我的 Angular-11 项目中,我在 SharedModule 中有这个
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule } from '@angular/forms';
import { RouterModule } from '@angular/router';
import { A11yModule } from '@angular/cdk/a11y';
import { ClipboardModule } from '@angular/cdk/clipboard';
import { DragDropModule } from '@angular/cdk/drag-drop';
import { PortalModule } from '@angular/cdk/portal';
import { ScrollingModule } from '@angular/cdk/scrolling';
import { CdkStepperModule } from '@angular/cdk/stepper';
import { CdkTableModule } from '@angular/cdk/table';
import { CdkTreeModule } from '@angular/cdk/tree';
import { MatAutocompleteModule …Run Code Online (Sandbox Code Playgroud) 我希望我的下拉列表根据所选值显示/隐藏 Div
我的 angular 项目中有一个下拉列表和几个 Div,如代码所示
<div class="col-md-12 no-padding">
<label>Reply Type</label>
<select class="form-control select2" formControlName="replytype" type="text" style="width: 100%;">
<option value="predefined">Predefined</option>
<option value="opentype">Open Type</option>
</select>
</div>
Run Code Online (Sandbox Code Playgroud)
Div1
<div class="col-md-12 no-padding">
<label>Application Name</label>
<input type="text" formControlName="applicationname" class="form-control" id="applicationname" placeholder="Application Name">
<span class="text-danger" *ngIf="form.controls['applicationname'].touched && form.controls['applicationname'].hasError('required')">
Application Name is required! </span>
</div>
Run Code Online (Sandbox Code Playgroud)
Div2
<div class="col-md-12 no-padding">
<label>Main Menu</label>
<input type="text"class="form-control" id="mainmenu" placeholder="Message Text">
</div>
Run Code Online (Sandbox Code Playgroud)
如果选定的值是预定义的,则 Div1 是可见的,而 Div2 是隐藏的,但如果它是 opentype,则 Div2 是可见的,而 Div1 是隐藏的。
默认情况下,Div1 值应该是 opentype 并且 Div2 应该是可见的
我想在 Angular7 中构建表单数组
控件带有红色下划线。我什至在提供应用程序之前就遇到了这个错误:
“AbstractControl”类型上不存在属性“controls”
成分
addSubmenugroup(j) {
console.log(j);
const control = <FormArray>this.form.get('submenus').controls[j].get('submenugroups');
// console.log(control);
control.push(this.initSubmenugroup());
}
removeSubmenugroup(j){
const control = <FormArray>this.form.get('submenus').controls[j].get('submenugroups');
control.removeAt(j);
}
Run Code Online (Sandbox Code Playgroud)
当我点击提交按钮时,它应该生成表单数组。
在我的 Laravel-8 中,我的视图刀片中有以下内容:
{{$duration['time_spent'] ?? '' }}
Run Code Online (Sandbox Code Playgroud)
time_spent 以秒为单位。如何将其转换为人类可读的小时数
例如,4 小时 20 分钟
time_spent 类似于:124323.4
当我这样做的时候
{{$duration['time_spent']->diffForHumans() ?? '' }}
Run Code Online (Sandbox Code Playgroud)
我收到这个错误:
在 float 上调用成员函数 diffForHumans()
我该如何解决?
谢谢
我正在尝试使用 PHP 7、Laravel 5.8、Maatwebsite Excel 3.1 导出到 excel。我成功地在视图刀片上显示并执行过滤器。
模型:使用 App\UserResponse;
控制器
public function userresponseReport(Request $request,$export=false)
{
$data['title'] = 'User Response';
$userresponses = DB::table('user_response as g')
->select(
//DB::raw('DATE(g.created_at) as created_date'),
DB::raw('g.created_at as created_date'),
'g.msisdn',
'g.game_code',
'g.answer',
'g.answer_code',
'g.Amount_charged',
'g.payment_ref',
'g.status',
'g.user_channel'
)
->orderByRaw('g.created_at DESC');
$start_date = $request->start_date;
$end_date = $request->end_date;
$render=[];
if(isset($request->start_date) && isset($request->end_date))
{
$userresponses=$userresponses->whereBetween('created_at',[$start_date.' 00:00:00',$end_date.' 23:59:59']);
$render['start_date']=$request->start_date;
$render['end_date']=$request->end_date;
}elseif(isset($request->start_date))
{
$userresponses=$userresponses->where('created_at',$request->start_date);
$render['start_date']=$request->start_date;
}
if(isset($request->msisdn))
{
$userresponses=$userresponses->where('msisdn','like','%'.$request->msisdn.'%');
$render['msisdn']=$request->msisdn;
}
if(isset($request->game_code))
{
$userresponses=$userresponses->where('game_code','like','%'.$request->game_code.'%');
$render['game_code']=$request->game_code;
}
if(isset($request->user_channel))
{
$userresponses=$userresponses->where('user_channel','like','%'.$request->user_channel.'%');
$render['user_channel']=$request->user_channel;
}
if(!empty($export)) …Run Code Online (Sandbox Code Playgroud) 我想分页我的联接查询。它显示:方法分页不存在。
我已经在控制器中编写了查询
public function userBilling()
{
$billings = DB::table("billings")
->select("billings.email", "billings.plan","users.name","users.username", DB::raw("SUM(played_game.amount) as total"))
->join("users","users.email","=","billings.email")
->groupBy("users.email","users.name","users.username","billings.plan")
->orderByRaw('billings.email DESC')
->get()
->paginate(15);
return view('report.userBilling', compact('billings'));
}
Run Code Online (Sandbox Code Playgroud)
错误:
方法分页不存在。如何解决错误并进行分页
在我的 Laravel-8 中,我使用规则请求,并且有以下代码:
public function rules()
{
return [
'phone_number' => [
'required',
'numeric',
Rule::unique('companies', 'email')
],
'email' => [
'required',
'email',
'max:80',
Rule::unique('companies', 'email')
],
];
}
Run Code Online (Sandbox Code Playgroud)
如何根据需要验证电话或电子邮件而不是同时验证两者?
谢谢